w********s 发帖数: 1570 | 1 不考什么leetcode里的高级题,来点基础的吧
写一下double linked list的反转
写一下in place的quick sort
发觉很多工作好多年的都不会写或者写错。 |
B*******1 发帖数: 2454 | 2 可以问问design
【在 w********s 的大作中提到】 : 不考什么leetcode里的高级题,来点基础的吧 : 写一下double linked list的反转 : 写一下in place的quick sort : 发觉很多工作好多年的都不会写或者写错。
|
B********t 发帖数: 1321 | 3 现在面试越来越朝茴香豆的写法靠拢了。
没办法,只能适应。 |
d********f 发帖数: 43471 | 4 因为实际工作中根本没有几个人会用linked list。你自己想一下你自己在实际工作中
用过linked list么
【在 w********s 的大作中提到】 : 不考什么leetcode里的高级题,来点基础的吧 : 写一下double linked list的反转 : 写一下in place的quick sort : 发觉很多工作好多年的都不会写或者写错。
|
w**z 发帖数: 8232 | 5 用可能会用,但应该没人去reverse
【在 d********f 的大作中提到】 : 因为实际工作中根本没有几个人会用linked list。你自己想一下你自己在实际工作中 : 用过linked list么
|
q********c 发帖数: 1774 | 6 什么公司面那么简单的题?面我吧,我会。
【在 w********s 的大作中提到】 : 不考什么leetcode里的高级题,来点基础的吧 : 写一下double linked list的反转 : 写一下in place的quick sort : 发觉很多工作好多年的都不会写或者写错。
|
s**x 发帖数: 7506 | 7 你这两题还是满有难度的。
第一题属于low level, 好多人平时都不会touch 到,第二题典型的教科书算法,不专
门刷题的人大都忘光了。
建议改成reverse single link and 3 way partition code. |
h*d 发帖数: 19309 | 8 工作很多年未见的用到这种,特别是平时IDE用惯了,白板编程很不适应
【在 w********s 的大作中提到】 : 不考什么leetcode里的高级题,来点基础的吧 : 写一下double linked list的反转 : 写一下in place的quick sort : 发觉很多工作好多年的都不会写或者写错。
|
|
i***0 发帖数: 8469 | 9 这个double link list需要反转吗
【在 w********s 的大作中提到】 : 不考什么leetcode里的高级题,来点基础的吧 : 写一下double linked list的反转 : 写一下in place的quick sort : 发觉很多工作好多年的都不会写或者写错。
|
b**d 发帖数: 1174 | 10 没错啊,不是一般都是single的拿来出反转的题么?
【在 i***0 的大作中提到】 : 这个double link list需要反转吗
|
|
|
n********e 发帖数: 41 | 11 double linked list 需要反转么。。。
直接打开 链表定义类
把 next 改成 qianYiGe
把 previous 改成 xiaYiGe
把 head 改成 wei
把 tail 改成 tou
直接用就好了 -_-! |
s******d 发帖数: 424 | 12 练练手
LinkNode* reverse(LinkNode* head)
{
if(!head || !head->next) return head;
LinkNode* prev = head, *curr = prev->next, *next = curr->next;
while(curr)
{
curr->next = prev;
prev = curr;
curr = next;
next = next? next->next : NULL;
}
head->next = NULL;
return prev;
} |
s**x 发帖数: 7506 | 13 最简单版本:
Node *reverse(Node *head)
{
Node *newHead = NULL;
while( head) {
Node *tmp = head->next;
head->next = newHead;
newHead = head;
head = tmp;
}
return newHead;
}
【在 s******d 的大作中提到】 : 练练手 : LinkNode* reverse(LinkNode* head) : { : if(!head || !head->next) return head; : LinkNode* prev = head, *curr = prev->next, *next = curr->next; : while(curr) : { : curr->next = prev; : prev = curr; : curr = next;
|
s*******m 发帖数: 38 | |
t*******i 发帖数: 4960 | 15 这个是 单向链表反转吧?人家是双向链表。
【在 s**x 的大作中提到】 : 最简单版本: : Node *reverse(Node *head) : { : Node *newHead = NULL; : while( head) { : Node *tmp = head->next; : head->next = newHead; : newHead = head; : head = tmp; : }
|
t*******i 发帖数: 4960 | 16 这种题才是越是学生越会做,工作越久越不会了,除非专门刷题
【在 w********s 的大作中提到】 : 不考什么leetcode里的高级题,来点基础的吧 : 写一下double linked list的反转 : 写一下in place的quick sort : 发觉很多工作好多年的都不会写或者写错。
|
s*****r 发帖数: 43070 | 17 不够efficient,head->next=null可以不用,再想想,而且可读性比较差,最后return
prev非常confuse
【在 s******d 的大作中提到】 : 练练手 : LinkNode* reverse(LinkNode* head) : { : if(!head || !head->next) return head; : LinkNode* prev = head, *curr = prev->next, *next = curr->next; : while(curr) : { : curr->next = prev; : prev = curr; : curr = next;
|
o******0 发帖数: 105 | 18
For double linked list reverse, you only need to exchange the head and tail.
Simple.
【在 w********s 的大作中提到】 : 不考什么leetcode里的高级题,来点基础的吧 : 写一下double linked list的反转 : 写一下in place的quick sort : 发觉很多工作好多年的都不会写或者写错。
|
M*****0 发帖数: 850 | 19 如果事先没复习过,绝大多数人都不能在15分钟内写出bug free 的quick sort 吧,包
括很多大牛 |
s**x 发帖数: 7506 | 20 这个怎么样?the idea is remove each node and add it to a new list.
// assume not circular doubly linked list.
void reverse2(Node * &head, Node * &tail)
{
if (head == tail)
return;
Node *newHead = NULL;
Node *newTail = NULL;
Node *cur = head;
while(cur) {
Node *tmp = cur->next;
cur->next = newHead;
cur->prev = NULL;
if (newHead == NULL} newTail = cur;
else newHead->prev = cur;
newHead = cur;
cur = tmp;
}
head = newHead;
tail = newTail;
} |
|
|
A*****i 发帖数: 3587 | 21 double linked list反转
LZ你是猴子派来的逗逼么? |
w******y 发帖数: 291 | 22 问这种题,就是水平不够。 你自己会写吗?你写他干啥用? |
w*******6 发帖数: 392 | 23 貌似只有学生才会耍这些屠龙之技吧,上班族那有空刷这些不着边际的题目哈! |
s*********n 发帖数: 191 | 24 Quicksort 还有反转链表这些都太基础了吧,lz面得没错啊。
理解快排算法的话,根本不需要复习什么。就算退一步讲,代码里面有点小bug,边界
条件小于等于还是小于之类的,出现一点bug,面试官也未必一眼看到啊,就算看到了
稍微一提示不就完了。
但是恰恰是那些算法一知半解只会背题刷题的人就偏偏不会写。
以前面shadow过个candidate,leetcode, epi里面再难的题目轮轮都能秒,一路高歌
猛进,到了最后一轮我朋友面,就让他写个quicksort就给过,结果写不出来。
提示降低要求只要写个partition函数,还是写不出来。
再降低,开辟额外数组让他实现partition,还是写不出来。就这么提示了都不会。
其实这种基本功的题目还是可以刷掉很多刷题背题水货的。
【在 w********s 的大作中提到】 : 不考什么leetcode里的高级题,来点基础的吧 : 写一下double linked list的反转 : 写一下in place的quick sort : 发觉很多工作好多年的都不会写或者写错。
|
c*******e 发帖数: 70 | 25 很正常。。。
【在 w********s 的大作中提到】 : 不考什么leetcode里的高级题,来点基础的吧 : 写一下double linked list的反转 : 写一下in place的quick sort : 发觉很多工作好多年的都不会写或者写错。
|
q******8 发帖数: 848 | 26 算法分为工作中用到的算法和面试算法。
lz这两个都属于后者 |
T*******e 发帖数: 4928 | 27 真能胡扯。 “epi里面再难的题目轮轮都能秒”但是不会写partition函数。
EPI 8.13 就有一种partition. 他没写出来,只能说明他临场紧张了,或是在面试前对
这部分没准备而已。如果是已经工作的人答不出来, 很正常, 真正作项目,工作忙的
人不可能整天练你所谓的"基本功"。除非整天想跳槽。
【在 s*********n 的大作中提到】 : Quicksort 还有反转链表这些都太基础了吧,lz面得没错啊。 : 理解快排算法的话,根本不需要复习什么。就算退一步讲,代码里面有点小bug,边界 : 条件小于等于还是小于之类的,出现一点bug,面试官也未必一眼看到啊,就算看到了 : 稍微一提示不就完了。 : 但是恰恰是那些算法一知半解只会背题刷题的人就偏偏不会写。 : 以前面shadow过个candidate,leetcode, epi里面再难的题目轮轮都能秒,一路高歌 : 猛进,到了最后一轮我朋友面,就让他写个quicksort就给过,结果写不出来。 : 提示降低要求只要写个partition函数,还是写不出来。 : 再降低,开辟额外数组让他实现partition,还是写不出来。就这么提示了都不会。 : 其实这种基本功的题目还是可以刷掉很多刷题背题水货的。
|
s*********n 发帖数: 191 | 28 真的很无语。。。quicksort都不会,需要练吗?
无论从算法角度和代码量都很简洁吧。
找一个pivot往两边分这种思路,如果需要特别“练”...也太悲剧了。
【在 T*******e 的大作中提到】 : 真能胡扯。 “epi里面再难的题目轮轮都能秒”但是不会写partition函数。 : EPI 8.13 就有一种partition. 他没写出来,只能说明他临场紧张了,或是在面试前对 : 这部分没准备而已。如果是已经工作的人答不出来, 很正常, 真正作项目,工作忙的 : 人不可能整天练你所谓的"基本功"。除非整天想跳槽。
|
T*******e 发帖数: 4928 | 29 是吗? 这么简单,怎么没把你的名字标在哪个算法上?还不是等
人家想出来告诉你。你最多算是“ 简洁 ” 地记了个回乡豆下来。
【在 s*********n 的大作中提到】 : 真的很无语。。。quicksort都不会,需要练吗? : 无论从算法角度和代码量都很简洁吧。 : 找一个pivot往两边分这种思路,如果需要特别“练”...也太悲剧了。
|
s*********n 发帖数: 191 | 30 牛逼牛逼.......按照你的神逻辑,随便什么东西只要不是你原创的,都能套得上。
quicksort搞不清楚+神逻辑....
【在 T*******e 的大作中提到】 : 是吗? 这么简单,怎么没把你的名字标在哪个算法上?还不是等 : 人家想出来告诉你。你最多算是“ 简洁 ” 地记了个回乡豆下来。
|
|
|
T*******e 发帖数: 4928 | 31 我是说,没有准备,现场想quicksort的难度,和你记个
简洁的回乡豆的难度是不一样的。
至于你想怎么理解,那确实不是我能控制的。
【在 s*********n 的大作中提到】 : 牛逼牛逼.......按照你的神逻辑,随便什么东西只要不是你原创的,都能套得上。 : quicksort搞不清楚+神逻辑....
|
s*********n 发帖数: 191 | 32 quicksort这么基本和特别的in-space sorting, 你工作几年都能把原理忘记?
你在哪高就啊。退一步讲,工作几年的人,找工作,连这种算法书上极其经典的排序都
不看一下?
再退一万步讲:
何况说了很清楚,降低要求了,提示了要用partition,再提示把大小元素分两边,继
续提示给你额外空间,都不要求in-space了。剩下的就是写code而已。
工作几年了,这个都不会?这个恐怕不是不会算法吧,这是压根coding就是一坨屎吧。
你不会“工作”几年coding这个样子吧。
【在 T*******e 的大作中提到】 : 我是说,没有准备,现场想quicksort的难度,和你记个 : 简洁的回乡豆的难度是不一样的。 : 至于你想怎么理解,那确实不是我能控制的。
|
T*******e 发帖数: 4928 | 33 有意思,人家熟的回乡豆,你说人家是刷题刷的, “coding就是一坨屎”。
你自己熟的回乡豆,那就是永世难忘的原理. 当然了,没准你就是那种提示
一下就能创造出quicksort甜菜。这么简单的原理,你没先创造出来,那只是因为Hoare
他们没提示你。
【在 s*********n 的大作中提到】 : quicksort这么基本和特别的in-space sorting, 你工作几年都能把原理忘记? : 你在哪高就啊。退一步讲,工作几年的人,找工作,连这种算法书上极其经典的排序都 : 不看一下? : 再退一万步讲: : 何况说了很清楚,降低要求了,提示了要用partition,再提示把大小元素分两边,继 : 续提示给你额外空间,都不要求in-space了。剩下的就是写code而已。 : 工作几年了,这个都不会?这个恐怕不是不会算法吧,这是压根coding就是一坨屎吧。 : 你不会“工作”几年coding这个样子吧。
|
s*********n 发帖数: 191 | 34 你这是精神不太对吧。
叫你写quicksort,你写不出来,可以理解你以前算法没学好,或者后面又没好好复习
,搞不懂partition的原理。
现在说了只要把一个数组按某大小排到两侧,并且可以借助额外空间,完全告诉你了。
这个跟quicksort的要求几乎已经没关系了吧,也不需要什么提示了吧,剩下就是叫你
写。给你一个数组,给你一个值,把小的方前面,大的放后面,再给你借助额外空间。
正常人都能写出来吧。
你这个写不出来,coding不是一坨屎是什么?莫非阁下也是这个水平?拼命辩护?
Hoare
【在 T*******e 的大作中提到】 : 有意思,人家熟的回乡豆,你说人家是刷题刷的, “coding就是一坨屎”。 : 你自己熟的回乡豆,那就是永世难忘的原理. 当然了,没准你就是那种提示 : 一下就能创造出quicksort甜菜。这么简单的原理,你没先创造出来,那只是因为Hoare : 他们没提示你。
|
T*******e 发帖数: 4928 | 35 是的, 别人看了答案都“搞不懂partition的原理”, 就你看完答案和提示总算搞
懂了。 真是遗憾,平时没有人多提示你, 要不将有多少计算机的原理会由你先发现。
【在 s*********n 的大作中提到】 : 你这是精神不太对吧。 : 叫你写quicksort,你写不出来,可以理解你以前算法没学好,或者后面又没好好复习 : ,搞不懂partition的原理。 : 现在说了只要把一个数组按某大小排到两侧,并且可以借助额外空间,完全告诉你了。 : 这个跟quicksort的要求几乎已经没关系了吧,也不需要什么提示了吧,剩下就是叫你 : 写。给你一个数组,给你一个值,把小的方前面,大的放后面,再给你借助额外空间。 : 正常人都能写出来吧。 : 你这个写不出来,coding不是一坨屎是什么?莫非阁下也是这个水平?拼命辩护? : : Hoare
|
s*********n 发帖数: 191 | 36 别整这些酸不拉几的话,这个根本就不是partition的原理,partition是要求in-space
的,现在是开辟数组,随便你玩,这个应该会manipulate array的都能做。自己水平烂
就低调点,
别胡搅蛮缠地说酸话。
也别整什么天外飞仙的发现原理不原理的,就事论事学习快排是每个cs出身的人
都经历过的,没什么所谓答案不答案的。我没说过什么发现新原理的本领。就事论事:
1) 在校生该不该懂quicksort? 2)工作上班族不懂quicksort那什么都告诉你了,
coding skill是不是起码得有?
还是有不少基础不错的人在hunting job, 你少在这里误导别人。基本几大公司都面过
这种题,还不少见。
【在 T*******e 的大作中提到】 : 是的, 别人看了答案都“搞不懂partition的原理”, 就你看完答案和提示总算搞 : 懂了。 真是遗憾,平时没有人多提示你, 要不将有多少计算机的原理会由你先发现。
|
T*******e 发帖数: 4928 | 37 "也别整什么天外飞仙的发现原理不原理的",不是你自己先提“原理”的吗?
会写一个快排,就成这样了。 我怀疑你真正做过几个公司里的项目。
space
【在 s*********n 的大作中提到】 : 别整这些酸不拉几的话,这个根本就不是partition的原理,partition是要求in-space : 的,现在是开辟数组,随便你玩,这个应该会manipulate array的都能做。自己水平烂 : 就低调点, : 别胡搅蛮缠地说酸话。 : 也别整什么天外飞仙的发现原理不原理的,就事论事学习快排是每个cs出身的人 : 都经历过的,没什么所谓答案不答案的。我没说过什么发现新原理的本领。就事论事: : 1) 在校生该不该懂quicksort? 2)工作上班族不懂quicksort那什么都告诉你了, : coding skill是不是起码得有? : 还是有不少基础不错的人在hunting job, 你少在这里误导别人。基本几大公司都面过 : 这种题,还不少见。
|
s*********n 发帖数: 191 | 38 你哪里又得出结论我会写个快排就成这样。
我是看你那么搓还喜欢胡说八道误导才这样。
能报个贵公司的名号吗?您还做“公司项目”,让俺膜拜一下。
【在 T*******e 的大作中提到】 : "也别整什么天外飞仙的发现原理不原理的",不是你自己先提“原理”的吗? : 会写一个快排,就成这样了。 我怀疑你真正做过几个公司里的项目。 : : space
|
T*******e 发帖数: 4928 | 39 你不就是想说: 别人熟的题都是刷的,其实什么都不懂,你熟的题就都是体现了你
对原里的掌握吗。
对不起, 我不像你一样,会一种快排就想让人膜拜。我不是神, 我忘记的东西很
多,我不懂的东西就更多了,
【在 s*********n 的大作中提到】 : 你哪里又得出结论我会写个快排就成这样。 : 我是看你那么搓还喜欢胡说八道误导才这样。 : 能报个贵公司的名号吗?您还做“公司项目”,让俺膜拜一下。
|
s*********n 发帖数: 191 | 40 卧槽。。。你这是毛病吧。得看心理医生了。
你哪里看出来我说别人熟的都是刷题的?我以前见过ICPC不用准备随便秒的。
我只是说能刷掉部分啥都不会只会刷题背题的水货。
我也没有强敌快排就得让人崇拜。
你心理有畸形吧?
【在 T*******e 的大作中提到】 : 你不就是想说: 别人熟的题都是刷的,其实什么都不懂,你熟的题就都是体现了你 : 对原里的掌握吗。 : 对不起, 我不像你一样,会一种快排就想让人膜拜。我不是神, 我忘记的东西很 : 多,我不懂的东西就更多了,
|
|
|
T*******e 发帖数: 4928 | 41 "但是恰恰是那些算法一知半解只会背题刷题的人就偏偏不会写。
以前面shadow过个candidate,leetcode, epi里面再难的题目轮轮都能秒,一路高歌
猛进,到了最后一轮我朋友面,就让他写个quicksort就给过,结果写不出来。"
Read your own words.
【在 s*********n 的大作中提到】 : 卧槽。。。你这是毛病吧。得看心理医生了。 : 你哪里看出来我说别人熟的都是刷题的?我以前见过ICPC不用准备随便秒的。 : 我只是说能刷掉部分啥都不会只会刷题背题的水货。 : 我也没有强敌快排就得让人崇拜。 : 你心理有畸形吧?
|
s*********n 发帖数: 191 | 42 哇咔咔,才发现你是女纸。
不辩了。。。。
【在 T*******e 的大作中提到】 : "但是恰恰是那些算法一知半解只会背题刷题的人就偏偏不会写。 : 以前面shadow过个candidate,leetcode, epi里面再难的题目轮轮都能秒,一路高歌 : 猛进,到了最后一轮我朋友面,就让他写个quicksort就给过,结果写不出来。" : Read your own words.
|
T*******e 发帖数: 4928 | 43 难怪你阅读理解能力这么差。
【在 s*********n 的大作中提到】 : 哇咔咔,才发现你是女纸。 : 不辩了。。。。
|