码迷,mamicode.com
首页 >  
搜索关键字:两个指针    ( 1059个结果
快速找到未知长度的单链表的中间结点
问题描述:快速找到未知长度的单链表的中间结点 普通方法:首先遍历一遍单链表,以确定单链表的长度L,然后再从头结点出发,循环L/2次,找到单链表的中间结点。 高效算法(快慢指针):设置两个指针,*search,*mid都指向单链表的头结点。其中*search指针的移动速度是*mid指针移动速度的2倍。 ...
分类:其他好文   时间:2018-11-02 20:32:03    阅读次数:222
删除链表倒数第n个结点
一次遍历算法 算法 算法可以只使用一次遍历。我们可以使用两个指针而不是一个指针。第一个指针从列表的开头向前移动 n+1 步,而第二个指针将从列表的开头出发。现在,这两个指针被 n 个结点分开。我们通过同时移动两个指针向前来保持这个恒定的间隔,直到第一个指针到达最后一个结点。此时第二个指针将指向从最后 ...
分类:其他好文   时间:2018-10-30 23:51:48    阅读次数:190
leetcode-206 Reverse Linked List
Reverse a singly linked list.Example:Input: 1->2->3->4->5->NULLOutput: 5->4->3->2->1->NULL想法:设置两个指针,一个指向当前节点,另一个指向当前节点的写一个节点。然后逐个反转/** * Definition fo... ...
分类:其他好文   时间:2018-10-28 21:55:16    阅读次数:183
数据结构--树
概念 树是一种非线性的数据结构,相对于线性的数据结构(链表、数组)而言,树由节点组成,树的平均运行时间更短(往往与树相关的排序时间复杂度都不会高),一般的树是有很多很多个分支的,分支下又有很多很多个分支,如果在程序中研究这个会非常麻烦。因为本来树就是非线性的,而我们计算机的内存是线性存储的,太过复杂 ...
分类:其他好文   时间:2018-10-28 19:26:44    阅读次数:151
js 二分查找(Binary Search)
数组二分查找: 1.先对数组排序,从小到大排序 2.定义两个指针,左指针(left)指向数组第一个元素,右指针(right)指向数组最后一个元素 3.取数组中间(nums[mid])的项和目标值(target)比较 4.如果中值小于目标值,说明目标值在后半数组,将左指针(left)指向nums[mi ...
分类:Web程序   时间:2018-10-21 13:13:39    阅读次数:164
LeetCode 19——删除链表的倒数第 N 个节点
1. 题目 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。 示例: 给定一个链表: 1 2 3 4 5, 和 n = 2. 当删除了倒数第二个节点后,链表变为 1 2 3 5. 说明: 给定的 n 保证是有效的。 进阶: 你能尝试使用一趟扫描实现吗? 2. 思路 定义两个指针 p ...
分类:其他好文   时间:2018-10-21 00:59:14    阅读次数:176
206. Reverse Linked List
一、题目 1、审题 2、分析 分别采用递归、迭代的方式将链表进行翻转。 二、解答 1、思路: 方法一、 迭代: 采用两个指针 pre、cur 方法二、 递归: ...
分类:其他好文   时间:2018-10-20 19:52:58    阅读次数:153
CF1066D Boxes Packing
"传送门" 这题为什么要用二分呢?/huaji 首先可以$O(n)$预处理出从某个物品$i$开始放,只放一个盒子,能放的最后物品的位置$j$,只要用两个指针维护左右端点,每次移动一下左端点同时尽量把右端点右移救星了 然后我们要放的所有物品是原来的一个后缀,所以要从后往前放,~~但是直接贪心放是错的~ ...
分类:其他好文   时间:2018-10-20 17:26:51    阅读次数:216
167. Two Sum II - Input array is sorted
一、题目 1、审题 2、分析 给出一个升序的整形数组,当两个元素之和为 target ,输出这两个元素的下标。(只有一组符合的数) 二、解答 1、思路: 方法一、 采用两个指针,start 从前向后移动,end 从后向前移动;当 num[start] + num[end] = target 时,输出 ...
分类:其他好文   时间:2018-10-16 02:05:36    阅读次数:305
LeetCode 234——回文链表
1. 题目 请判断一个链表是否为回文链表。 示例 1: 输入: 1 2 输出: false 示例 2: 输入: 1 2 2 1 输出: true 进阶: 你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题? 2. 思路 此题可以看做是 "反转链表" 和 "链表中间结点" 的结合。 定义快 ...
分类:其他好文   时间:2018-10-13 22:52:17    阅读次数:185
1059条   上一页 1 ... 28 29 30 31 32 ... 106 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!