面试题
kerer-sk
这个作者很懒,什么都没留下…
展开
-
单链表反转
关于链表反转是招聘笔试中经常考的题,而且经常是让直接写在纸上,感觉在纸上写程序比使用IDE写难好多,可能还是自己不太熟练,所以整理了一下链表的反转的方法。 关于链表反转个人想到了三种方法,后续看到新方法会补充……链表反转##1. 新链表从最后一个节点向前新建,依次拷贝原链表的数据。 ##2. 先将链表中的数据拷贝到一个数组中,从数组最后一个元素依次向前新建链表,这个链表新建的方式是从前向后新建原创 2017-06-15 23:19:37 · 236 阅读 · 0 评论 -
链表反转
2017年亚马逊实习生招聘时的题目问题描述:实现一个链表,反转后一半,如果链表长度是基数则从(N+1)/2开始反转;想到的思路:1、可以设置两个指示节点的标记,一个标记每次前进一个节点,一个每次前进两个节点,这样循环N/2次就可以找到中间节点,然后从这里开始链表反转; 2、直接设置一个数组,将链表拷贝入数组中,然后从头开始新建一个链表,将数组前半段按顺序拷贝到新链表,后半段反序拷贝。实现代码思路1原创 2017-06-16 11:07:08 · 335 阅读 · 0 评论 -
排列组合(一)全排列
问题描述输出一个字符数组元素的全排列 如输入:'a','b','c' 结果:a,b,c b,a,c c,b,a a,c,b b,c,a c,a,b 6解决思路这个问题是一个全排列问题,数学计算为A(n,n)。数学思路为,n个元素,第一位可以为n种可能,第二位可以有n-1种可能,以此类推所以全排列的种类一共有n!个。 以此为思路,我们可以原创 2017-07-05 22:40:15 · 3104 阅读 · 0 评论 -
二叉树深度
求二叉树深度class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val = val; } } // 方式一 class Solution { public int TreeDep原创 2017-08-07 23:29:41 · 276 阅读 · 0 评论