描述 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。 示例: 给定一个链表: 1->2->3->4->5, 和 n = 2. 当删除了倒数第二个节点后,链表变为 1->2->3->5.说明: 给定的 n 保证是有效的。 进阶: 你能尝试使用一趟扫描实现吗? 解析 用三指针,fas ...
分类:
其他好文 时间:
2019-12-19 21:28:23
阅读次数:
75
代码: /* *带头节点的单链表 */ #include<iostream> #include<stdlib.h> using namespace std; typedef struct ListNode { int data; struct ListNode* next; } Node,*PNod ...
分类:
其他好文 时间:
2019-12-19 12:43:39
阅读次数:
88
数据结构实验之链表三:链表的逆置 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Problem Description 输入多个整数,以-1作为结束标志,顺序建立一个带头结点的单链表,之后对该单链表的数据进行逆置,并输出逆置 ...
分类:
其他好文 时间:
2019-12-18 21:48:50
阅读次数:
114
中序线索二叉树 在线索二叉树中再增加一个头结点,。头结点data域为空;lchild指向无线索时的根结点,ltag=0;rchild指向中序遍历二叉树时的最后一个结点,rtag=1。 TBTNode* pre; void Thread(TBTNode*& p) { if (p != NULL) { ...
分类:
其他好文 时间:
2019-12-18 21:38:34
阅读次数:
93
链表中的头指针和头结点 链式存储 指针域(单链表),来记录下一个结点的存储位置(地址) 插入和删除结点时,只需要修改指针即可 struct node{ int data; struct node *next; } data是数据域,用于存储数据 next是指针域,用于存储下一个结点的位置(地址) ...
分类:
其他好文 时间:
2019-12-14 09:41:02
阅读次数:
110
一、预备知识:typedef 基本使用 也可以这样使用,这样更加的方便 还可以把上面的两个结合起来 二、离散存储(链表) 定义:n个节点离散分配,彼此通过指针相连,每一个节点只有一个前驱节点和一个后续节点,首节点没有前驱节点,尾节点没有后续节点 专业术语: 1. 首节点:第一个有效节点 2. 尾节点 ...
分类:
其他好文 时间:
2019-12-02 23:45:15
阅读次数:
120
6-4 递增的整数序列链表的插入 (15 分) 本题要求实现一个函数,在递增的整数序列链表(带头结点)中插入一个新整数,并保持该序列的有序性。 函数接口定义: List Insert( List L, ElementType X ); 其中List结构定义如下: typedef struct Nod ...
分类:
其他好文 时间:
2019-11-25 20:42:01
阅读次数:
60
6-9 单链表分段逆转 (25 分) 给定一个带头结点的单链表和一个整数K,要求你将链表中的每K个结点做一次逆转。例如给定单链表 1→2→3→4→5→6 和 K=3,你需要将链表改造成 3→2→1→6→5→4;如果 K=4,则应该得到 4→3→2→1→5→6。 函数接口定义: void K_Reve ...
分类:
其他好文 时间:
2019-11-25 20:25:29
阅读次数:
101
给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。 class Solution { public ListNode removeNthFromEnd(ListNode head, int n) { //链表长度为5(len),倒数第2(n)个节点,正数第4(len - n + 1) ...
分类:
其他好文 时间:
2019-11-23 23:31:32
阅读次数:
82
给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。 示例: 给定一个链表: 1->2->3->4->5, 和 n = 2. 当删除了倒数第二个节点后,链表变为 1->2->3->5. 1 /** 2 * Definition for singly-linked list. 3 * p ...
分类:
其他好文 时间:
2019-11-21 21:27:53
阅读次数:
165