数据结构包括:线性结构和非线性结构 线性结构 (1)线性结构作为最常用的数据结构,其特点是数据元素之间存在一对一的线性关系。 (2)线性结构有两种不同的存储结构,即顺序存储结构和链式存储结构。顺序存储的线性表称为顺序表,顺序表中的存储元素是连续的。 (3)链式存储的线性表称为链表,链表中的存储元素不 ...
分类:
其他好文 时间:
2019-09-18 11:02:33
阅读次数:
88
单链表 删除链表中重复的结点 回文链表 查找单链表中间节点 查找单链表倒数第K个节点 单链表反转 数组转链表 链表转数组 奇偶链表 合并两个单链表 两个链表的第一个公共节点 双向链表 ...
分类:
编程语言 时间:
2019-09-15 01:47:02
阅读次数:
103
顺序表 顺序表是采用顺序结构存储的线性表。顺序表是将所有元素放到一块连续的存储空间中,特点是存取速度快,但是不可以动态增加长度。 链表 链表是采用链式结构存储的线性表。链表中的元素在存储空间中的位置不一定是连续的,所以链表使用结点来存储元素,每个节点中还存储了相邻节点位置信息。由于不是连续存储,存取 ...
分类:
其他好文 时间:
2019-09-14 00:30:30
阅读次数:
61
线性表是一种常用的数据结构,通常用来存储数据,存储方式是线性的。常见的线性表有顺序表, 链表等。顺序表是基于数组实现的,链表是通过一个个节点链接而成。线性表具有随机访问的机制,可以 在任意位置插入和删除数据元素。 C语言实现: #define MaxSize 10 typedef struct{ c ...
分类:
其他好文 时间:
2019-09-13 17:34:58
阅读次数:
110
A与B链表合并成C链表(链表的归并) 已知两个有序递增A链表和B链表(非空),将两个链表合并为C链表(同为递增有序),需要我们对链表的概念有一定掌握 对节点所需条件以及节点之间建立关系有所掌握。 这个题的重点是,并没有说明两个链表的具体长度,即两个链表可能不一样长,所以,在处理的时候需要注意,当某一 ...
分类:
其他好文 时间:
2019-09-12 21:22:25
阅读次数:
79
链表的头插法和尾插法 本文的链表均是带头结点的链表。 链表可以说是最简单的链式结构,在C语言中,通常用结构体封装其数据域及指针域作为一个结点。 今天我们说的是链表结点的构造方式以及插入方式。 尾插法 即将节点依次接入链表末尾,称为尾插法 头插法 为什么要把头插法放在尾插法后面来讲呢,头插法顾名思义, ...
分类:
其他好文 时间:
2019-09-12 21:16:35
阅读次数:
113
一.线性结构和非线性结构 1. 线性结构 + 线性结构作为最常用的数据结构,其特点是数据元素之间存在 一对一 的线性关系 + 线性结构有两种不同的存储结构,即 顺序存储结构 和 链式存储结构 。顺序存储的线性表称为 顺序表 ,顺序表中的存储元素是 连续 的 + 链式存储的线性表称为 链表 ,链表中的 ...
分类:
编程语言 时间:
2019-09-05 23:20:43
阅读次数:
122
问题描述 给定两个单链表,链表的每个结点代表一位数,计算两个数的和。例如 :输入链表 (3一>1一> 5)和链表(5一>9一> 2),输出 :8 0 8,即 513+295 =808,注意个位数在链表头。 class Node: def __init__(self, data=None, next= ...
分类:
其他好文 时间:
2019-09-04 13:41:28
阅读次数:
80
链表的结构简单,它由指针把若干个结点连接成链状结构。它是一种动态结构,因为在创建链表时无须知道链表长度。插入一个结点时只需要为新结点分配内存,然后调整指针的指向即可。如果链表的头指针会有更改,那么参数应该设为指向指针的指针,即ListNode **pHead。 优点:空间效率高,因为是每添加一个结点 ...
分类:
编程语言 时间:
2019-09-01 14:26:31
阅读次数:
69