```java
**1.需要扎实的基本功,体现在3个方面,编程语言、数据结构、算法
每个程序员至少要掌握一两门编程语言
数据结构需要掌握链表、树、栈、队列和哈希表等数据结构
各大公司的面试题,链表和二叉树相关的问题是重点
对于链表的插入和删除节点,二叉树的各种遍历方法和循环的递归写法
对于算法方面,查找、排序等算法
重点掌握二分查找、归并排序、快速排序
少数公司要求掌握动态规划和贪心算法
越简单的题需要考虑的因素更多,需要各方面的问题,要有高质量的代码
需要有清晰的思路再去写代码,
1.求链表中的倒数第k个节点
2.二叉搜索树与双向链表
1.数据结构一直是技术面试的重点。大部分面试题都围绕着数组、字符串、链表、树、栈与队列几种常见的数据结构展开的
数组与哈希表,把数组的下标当中键,数组中的值当做哈希表的值,形成键值对
面试题:
找出数组中重复的数字
不修改数组找出重复的数字