2014年4月16日

[原]《面试题精选》14.圆圈中最后剩下的数字

摘要: 题目:n个数字(0,1,…,n-1)形成一个圆圈,从数字0开始,每次从这个圆圈中删除第m个数字(第一个为当前数字本身,第二个为当前数字的下一个数字)。当一个数字删除后,从被删除数字的下一个继续删除第m个数字。求出在这个圆圈中剩下的最后一个数字。 分析:这是一道约瑟夫环问题。思路就是按照提中的步骤去执行,很明显用到的数据结构是循环双向链表,关键是循环双链表的实现。见:... 阅读全文

posted @ 2014-04-16 20:20 狼牙灬月 阅读(242) 评论(0) 推荐(0) 编辑

[原]《面试题精选》13.第一个只出现一次的字符

摘要: 题目:在一个字符串中找到第一个只出现一次的字符。如输入abaccdeff,则输出b。 分析:首先拿到一到数据结构算法题,你会先想到什么?必然是我们要利用到什么数据结构来解决这道问题。首先想到的肯定是链表,栈,队列,可以吗?想了很久感觉不行,然后我又想到用各种树,感觉时间复杂度还是不好。最后,好吧,不会做。怎么办,看答案呗。然后发现,我ri,hash表,竟然忘了这东西... 阅读全文

posted @ 2014-04-16 16:49 狼牙灬月 阅读(196) 评论(0) 推荐(0) 编辑

[原]《面试题精选》12.求二元查找树的镜像

摘要: 题目:输入一颗二元查找树,将该树转换为它的镜像,即在转换后的二元查找树中,左子树的结点都大于右子树的结点。用递归和循环两种方法完成树的镜像转换。 例如输入: 8 / \ 6 10 /\ /\ 5 7 9 11 输出: 8 / \ 10 6 /\ /\ 11 ... 阅读全文

posted @ 2014-04-16 14:54 狼牙灬月 阅读(140) 评论(0) 推荐(0) 编辑

导航