
数据结构基础
数据结构基础学习历程
lijing-blog
这个作者很懒,什么都没留下…
展开
-
数据结构基础10(排序算法)
排序算法1.冒泡2.选择3.直接插入4.希尔排序5.堆排序6.快速排序7.二路归并排序8.基数排序9.主函数1.冒泡void Swap(int* a, int* b){ int tmp = *a; *a = *b; *b = tmp;}//冒泡 时间复杂度:O(n²)空间复杂度:O(1) 因为没有申请空间 稳定性:稳定void BubbleSort(int* arr, i...原创 2020-04-16 10:48:05 · 431 阅读 · 0 评论 -
数据结构基础09(串匹配算法)
串匹配算法1.BF算法(朴素算法)1.BF算法(朴素算法)#include<stdio.h>#include<string.h>//时间复杂度O(n*m)int BF(const char *s,const char *p){ int i = 0; int j = 0; int lens = strlen(s); int lenp = strlen(...原创 2020-04-15 10:48:32 · 182 阅读 · 0 评论 -
数据结构基础08(栈的应用)
栈的应用1.中缀表达式转后缀表达式2.两个栈实现一个队列3.两个队列实现一个栈1.中缀表达式转后缀表达式static void DealRight(SqStack* st){ while (1) { ELemType val; PopStack(st, &val); if (val == '(') { break; } printf("%c", va...原创 2020-04-14 19:17:26 · 174 阅读 · 0 评论 -
数据结构基础04(单链表典型题目)
单链表典型题目1.判断两个单链表是否相交,求相交的那个结点2.判断-个单链表是否有环3.如果有环,返回入环的第一 个结点4.O(1)删除结点p (p结点不是最后一一个结点)5.O(1)在结点P之前插入一个新的数据val6.将单链表逆置 12345 543217.1.判断两个单链表是否相交,求相交的那个结点思路一:通过两个指针,直接跑到最后一个结点,判断两个结点的地址是否相等。 但是无法求得...原创 2020-04-13 15:02:34 · 312 阅读 · 0 评论 -
数据结构基础05(双向链表)
双向链表一、双向链表0.头文件1. 判空2. 申请新结点2.1 获取长度3. 初始化4.获取长度5.插入1.按位置插2.头插3.尾插6.打印1.正向打印2.逆向打印7.删除1.按位置删除2.头删3.尾删8.清除函数9.销毁函数10.主函数一、双向链表0.头文件#pragma oncetypedef int ElemType;typedef struct Node{ ElemTyp...原创 2020-04-11 00:27:13 · 485 阅读 · 0 评论 -
数据结构基础06(双向循环链表)
双向循环链表一、双向循环链表0.头文件1. 判空2. 申请新结点3. 初始化4.获取长度5.插入1.按位置插2.头插3.尾插6.打印1.正向打印2.逆向打印7.删除1.按位置删除2.头删3.尾删8.主函数一、双向循环链表0.头文件#pragma oncetypedef int ElemType;typedef struct Node{ ElemType data; struct ...原创 2020-04-11 00:13:29 · 500 阅读 · 0 评论 -
数据结构基础07(顺序栈和顺序循环队列)
顺序栈和顺序循环队列一、顺序栈0.头文件1. 判空2. 申请新空间3. 初始化4.判断栈是否为空5.入栈6.取栈顶7.出栈8.清除函数9.销毁函数10.主函数二、顺序循环队列0.头文件1. 判空2. 判断队列是否为空3. 初始化4.判断队列是否为满5.入队6.获取队头7.出队8.清除队列(不释放空间)9.销毁队列(将内存空间销毁)10.主函数一、顺序栈0.头文件#pragma once#d...原创 2020-04-11 00:02:45 · 1540 阅读 · 1 评论 -
数据结构基础03(单链表)
单链表原创 2020-04-02 13:25:33 · 627 阅读 · 0 评论 -
数据结构基础开篇00(数据结构学习顺序安排)
数据结构学习顺序安排数据结构学习顺序安排:c基础复习 函数 结构 动态内存开辟 衡量算法的标准:时间复杂度和空间复杂度顺序表:定长顺序表 不定长顺序表链表:单链表 双向链表 循环链表 (带头节点)不带头节点栈:顺序栈 链栈 栈的应用(中缀表达式转后缀表达式,后缀表达式求值)队列:顺序队列(顺序循环队列) 链式队列使用两个栈实现一个队列 使用两个队列实现一个栈串:串匹配算法:BF...原创 2020-03-15 16:34:37 · 558 阅读 · 0 评论 -
数据结构基础01(c语言概述及复习)
c语言概述及复习0.建立解决方案1.类型2.变量和表达式3.判断语句4.循环5.指针6.函数1.函数声明:给定函数的返回值类型 函数名 形参列表2.函数定义:加了个函数体3.函数调用:函数名(实参列表)4.函数的参数:值传递和地址传递1.值传递2.地址传递5.函数的返回值6.函数指针7.数组1.一维数组:同种类型变量的集合2.二维数组:是一个一维数组,其中每个元素又是一个一维数组3.指针与数组4....原创 2020-03-15 18:22:40 · 135 阅读 · 0 评论 -
数据结构基础02(顺序表)
顺序表1.插入头插尾插按位置插入2.删除按位置删除按值删除1.插入头插尾插按位置插入2.删除按位置删除按值删除原创 2020-03-28 15:12:55 · 475 阅读 · 0 评论