
考研数据结构
文章平均质量分 53
weixin_45889436
这个作者很懒,什么都没留下…
展开
-
排序算法(未完)
插入排序 思想:每次将一个待排序的记录按大小插入合适位置,直到全部插完。 直接插入排序 区别:选择排序 选择最小值插入,比较次数与序列无关 插入排序 插入值具有随机性,与当前的序列有一定关系 思想:将第i个元素插入前i-1个元素中,选取适当位置K 将K到i-1元素后移,插入到K中 void insertsort(int A[], int n){ int i,j; for (i=1;i<n;i++){ //从第一个元素开始遍历 ...原创 2021-10-12 18:25:18 · 108 阅读 · 0 评论 -
队列整理笔记
队列基本概念 定义:操作受限的线性表,允许一端(队头)删除(出队),另一端(队尾)插入(入队) 特点:FIFO(先进先出) 基本操作 初始化:initQueue(&q) 初始化头尾指针 队列判断空:QueueEmpty(q):判断空条件 入队:EnQueue(&q,key):若不满,入队成为队尾 出队:DeQueue(&q,&key)非空,队头出队 读取对头元素:GetQueue(1,&key)非空,读取 队列的顺序存储 定义:利用连续的一块存储.原创 2021-10-07 10:56:01 · 243 阅读 · 0 评论 -
栈
栈的概念 栈:一种只允许在一端进行插入和删除的线性表,首先栈是一种线性表,但是这种线性表只能在一端进行删除和插入。 栈顶:允许插入删除一端 栈底:不允许插入删除。空栈不包括认识元素 操作特性:LIFO(后进先出) n个元素进栈,出栈的数列顺序个数公式: ...原创 2021-10-07 09:42:46 · 377 阅读 · 0 评论 -
不带头结点的单链表
#include <iostream> using namespace std; #include <malloc.h> //不带头节点的单链表 typedef struct Lnode{ int data; struct Lnode *next; }Lnode,*Linklist; bool initlinklist(Linklist &L){ L=(Lnode *)malloc(sizeof(Lnode)); L=NULL; } bool head_inse.原创 2021-09-23 11:52:57 · 92 阅读 · 0 评论 -
王道单链表课后题
bool del_x_linklist(LinkList &L,int val){ int val= x; int k=0; LNode *s=L; LNode *p; LNOde *e=s->next; while(e!=NULL){ if(e->data==x) p=e; e=e->next; s->next=e; free(p); else s=s->next; e=s->next; r.原创 2021-09-09 11:57:23 · 151 阅读 · 0 评论 -
数据结构单链表
#include <iostream> #include <stdio.h> //队列 //单链表 //节点的定义 typedef struct LNode{ int data; struct LNode *next; }LNode, *LinkList; //头插法 LinkList headinsert(LinkList &L){ LNode *s ;int X; L=(LNode*)malloc(sizeof(LNode)); .原创 2021-09-09 10:13:17 · 794 阅读 · 0 评论 -
数据结构双链表
#include <iostream> //双链表 //定义节点 typedef struct DLnode{ int data; struct DLnode *prior,*next; }DLnode,*DLinklist; // bool initiDlinklist(DLinklist &L){ L=(DLnode *)malloc(sizeof(DLnode)); if (L==NULL) return false; L.原创 2021-08-21 00:08:19 · 179 阅读 · 0 评论 -
数据结构顺序表
顺序表定义: 用一组地址连续的存储单元依次存储线性表中的数据元素,从而使逻辑上相邻的元素在物理位置上也相邻 顺序表的特点: 1.支持随机存取,存储密度高,每个节点只存储数据元素 2.逻辑上相邻的物理上也相邻,插入数据元素和删除数据元素都需要移动大量元素 基本操作 插入操作 ...原创 2021-08-21 00:07:11 · 211 阅读 · 0 评论