摘要: 大家都喜欢将双指针分为两类,一类是快慢指针,另一类是左右指针; 其中,快慢指针主要解决一些和链表相关的问题,左右指针主要解决一些数组和字符串的问题,比如二分查找这样的。 快慢指针 快慢指针在使用的时候一般都是初始化指向链表的头部,之所以有快有慢是因为后面在更新的时候跨度不一样; 快慢指针可以用来判断 阅读全文
posted @ 2020-09-02 22:20 万物小白 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 二分查找也是属于双指针应用的一种体现; 二分查找在使用的时候,数据往往是有序的,并且一般是数组;因此一般两个指针一个是从左边开始,另一个是从右边开始; 二分查找在使用的时候一般是有大体的框架的,比如在一个数组中查找一个数的写法如下: public int fun(int []num, int tar 阅读全文
posted @ 2020-09-02 21:51 万物小白 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 二叉树的定义是每个结点最多只能有两个子节点; 对于一些二叉树的问题常常用到的编程思想就是递归; 二叉树重要的就是遍历问题,主要有前序遍历,中序遍历,后序遍历和层序遍历,各种遍历方法的命名是看当前结点的访问顺序; 在遍历的过程中,可能遇到合适的答案就要返回,合理的利用return语句可以达到剪枝的效果 阅读全文
posted @ 2020-09-02 16:06 万物小白 阅读(143) 评论(0) 推荐(0) 编辑