码迷,mamicode.com
首页 >  
搜索关键字:尾指针    ( 219个结果
2021.5.29 链表
一.为什么要用链表而不是数组 数组在定义了大小以后就不能随便改变了,而且数组要在内存中申请一块连续的区域,而链表可以随时增加或者减小元素,它的存储空间也是动态的。这对于内存的使用更加有性价比。 二.链表的组成部分 链表由头指针(不包括数据区域,只包含指向头节点的指针构成),头节点,常规节点,尾指针组 ...
分类:其他好文   时间:2021-06-02 16:09:29    阅读次数:0
Java数据结构——队列
队列 1.先进先出 2.可以使用数组或者链表来模拟队列 数组形式 单向队列 首先需要俩个指针,front和rear。front表示头指针,rear表示尾指针。 front = -1,rear = -1 front==rear:该队列为空 rear==Maxsize-1:该队列满了 但是单纯的这样设计 ...
分类:编程语言   时间:2021-05-24 07:31:45    阅读次数:0
面试常问的ArrayQueue底层实现
public class ArrayQueue<T> extends AbstractList<T>{ //定义必要的属性,容量、数组、头指针、尾指针 private int capacity; private int T[] queue; private int head; private int ...
分类:其他好文   时间:2021-01-26 12:17:34    阅读次数:0
LeetCode0167.两数之和 II - 输入有序数组
题目要求 算法分析 可以用双指针法, 分别指向头尾元素,如果两元素的和大于目标,尾指针前移,如果小于目标,头指针后移,等于目标即可得答案 代码展示(C#) public class Solution { public int[] TwoSum(int[] numbers, int target) { ...
分类:编程语言   时间:2020-07-20 10:40:01    阅读次数:55
数据结构C语言实现----出队伍操作
1.创建一个队列时,空队列中队首和队尾相同,但不是NULL,队首后面挂的元素才是NULL 2.打印队列时,对于链队列,不能把指针加一来找到下一个数据,因为链表地址不连续,需要复制一条链表,不断往后遍历来挨个打印链表的数据 3.求队伍的长度也是,不能首尾指针相减,因为地址不连续,所以同样需要复制一条链 ...
分类:编程语言   时间:2020-07-19 18:05:49    阅读次数:71
LeetCode 面试题02.02. 返回倒数第k个节点
思路描述:采用双指针的思想,让head指针先行移动k个位置,然后head,h同步移动,当head指针移动到链表尾,h指针所指即为倒数第k个节点 LeetCode 代码如下: /** * Definition for singly-linked list. * struct ListNode { * ...
分类:其他好文   时间:2020-07-09 19:06:25    阅读次数:53
C语言实现二叉树的层次遍历(队列)
画画还真是费时间,主要的思路就是有队列来完成层次遍历,首先需要一个遍历结点的指针p,初始化首尾指针,当p!=null进入循环,让根节点1入队,rear指针+1, 下面的循环遍历条件是首尾指针不等(rear!=front) 标记一下此时的父结点p就是队列的首结点p=queue[rear],首节点出队f ...
分类:编程语言   时间:2020-06-04 21:17:21    阅读次数:83
队列的一种实现:循环队列
队列的一种实现,循环队列,通过使用固定长度数组及首尾指针实现队列的入队、出队等: class CircularQueue<T> { private Object[] data; //数据存储数组 private int head; //队列头指针 private int tail; //队列尾指针 ...
分类:其他好文   时间:2020-06-01 09:12:35    阅读次数:67
LeetCode0680.验证回文字符串 Ⅱ
题目要求: 算法分析 判断回文串,可使用头尾双指针。因为回文串满足以下条件,若回文串两侧的字符相同,则删去两侧字符后剩下的字符串仍为回文串。 本题的特殊要求是,最多可以删除一个字符,所以双指针向中间行进的过程中可以有一次删除相异字符的机会, 因为头尾指针的两个字符不同,所以可以删掉头字符,或者删掉尾 ...
分类:其他好文   时间:2020-05-21 00:25:11    阅读次数:55
堆排序
堆排序 大根堆,小根堆:所有非叶子节点大于或者小于其孩子节点。 用大根堆进行从小到大的排序 建立大根堆:从下往上,从右往左遍历非叶子节点,判断其是否符合大根堆性质,若不符合,则交换节点位置,直至建出大根堆。 大根堆根节点一定是被排序的这段数值的最大值,交换堆尾堆首数值,堆尾指针前移(有没有冒泡的感觉 ...
分类:编程语言   时间:2020-05-16 12:18:49    阅读次数:77
219条   1 2 3 4 ... 22 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!