
数据结构
文章平均质量分 75
归期184
这个作者很懒,什么都没留下…
展开
-
手撕八大排序
排序算法1.直接插入排序2.希尔排序1.直接插入排序步骤一:单次排序,将x插入[0,end]的有序区间。 int end ; int x ; //单趟排序,理解为把x插入[0,end]的有序区间 while (end >= 0)//注意end的边界 { if (a[end] > x) { a[end + 1] = a[end]; end--;//end为0时--,end就等于-1,a[0]的就等于x } else原创 2021-11-22 11:07:32 · 1660 阅读 · 0 评论 -
二叉树oj题
二叉树oj题(1)相等二叉树(2) 对称二叉树(3)另一棵树的子树层序遍历oj题(1)相等二叉树思路:首先判断这两棵树是否为空。再考虑其中一个是否为空,接着再比较值是否相等,最后,如果值相等再递归比较子树1.判断两棵树是否相等。链接bool isSameTree(struct TreeNode* p, struct TreeNode* q){ if(p==NULL&&q==NULL) { return true; } if(p==NU原创 2021-11-15 19:37:24 · 487 阅读 · 0 评论 -
数据结构:单向链表
单向链表1. 单向链表的实现1. 单向链表的实现无头+单向+非循环链表增删查改实现首先定义接口#pragma once#include<stdio.h>#include<assert.h>#include<stdlib.h>typedef int STDataType;typedef struct SeqListNode{ STDataType data;//存放数据 struct SeqListNode* next;//next指向下一个结点原创 2021-11-08 21:30:48 · 449 阅读 · 0 评论 -
数据结构顺序表
顺序表1. 顺序表的实现1. 顺序表的实现//一般在生活中用到的是动态顺序表#pragma once#include<stdio.h>#include<stdlib.h>#include<assert.h>typedef int SLDataType;//typedef的目的是方便以后修改存储什么类型的数据typedef struct SeqList{ SLDataType* a;//指向动态开辟的数组 int size;//有效数据的个数 i原创 2021-10-30 17:57:29 · 215 阅读 · 1 评论