数据结构
文章平均质量分 76
PM伟少
杭州互联网上市公司项目经理,分享更多项目管理工具模板与方法论。
展开
-
使用只有表尾指针或只有表头指针的单循环链表的情况
使用只有表尾指针没有表头指针:循环单链表指的是最后节点的指针域指向表头节点,如果要删除第一个元素,只需要通过表尾指针找到第二个节点,然后将最后节点的指针指向第二个节点,就将第一个元素删除了;单链表指的是最后节点的指针域指向表头节点,如果要删除第一个元素,只需要通过表尾指针找到第二个节点,然后将最后节点的指针指向第二个节点,就将第一个元素删除了;在最后一个元素后面插入新元素时,先找到...原创 2018-07-03 20:32:56 · 18418 阅读 · 6 评论 -
顺序表“SeqList”
//定义顺序表结构体typedef struct{ DataType list[MaxSize]; int size;}SeqList;//初始化顺序表void ListInitiate(SeqList *L){ L->size = 0;}//求当前数据元素的个数int ListLength(SeqList L){ return L.size;}//插入数据元素int ListInsert(...转载 2018-05-06 21:22:09 · 795 阅读 · 0 评论 -
可变长顺序表
使用动态数组#include<stdio.h>#include<stdlib.h>#define LIST_INTT_SIZE 100 //线性表存储空间的初始化分配量#define LISTINCREMENT 10 //线性表存储空间的分配量typedef int DataType; //存储单元类型typedef struct{ DataType *elem; ...原创 2018-07-06 15:12:24 · 950 阅读 · 0 评论 -
著名的八大排序
一、插入排序1、直接插入排序 【直接插入排序的基本思想】顺序地把待排序的数据元素按其关键子的大小插入到已排序数据元素子集合的适当位置。子集合的数据元素个数从只有一个数据元素开始,逐次增大,当子集合大小最终和集合大小相同时,排序完毕。 设待排序的n个数据元素存放在数组a中,初始时,子集合a[0] 已排好序;第一次循环准备把数据元素a[1] 插入到已排好序的子集合中,这只需要比较...原创 2018-08-28 17:50:27 · 224 阅读 · 0 评论 -
堆区、栈区
栈区:存局部变量,定义的参数,比如int,char之类的,以及调用现场存在栈区,在函数结束时,系统会自动收回存储单元。 堆区:new,malloc等动态开辟的存在堆,函数结束时,需要我们用delete、free手动释放存储区。...原创 2018-09-05 20:58:40 · 101 阅读 · 0 评论