数据结构与算法
文章平均质量分 94
锻炼编程能力,从现在开始。
sehun?
这个作者很懒,什么都没留下…
展开
-
C语言实现排序算法
文章目录前言一、冒泡排序二、选择排序三、直接插入排序四、希尔排序五、堆排序六、归并排序七、快速排序八、桶排序九、二叉排序树前言对于排序而言,在生活中经常会遇到,比如学校考试成绩的排序,而对于排序也存在着其稳定性,像当学校有两个同学a和b的成绩相同的时候,我们通过学号(下标)进行排序,在学号前面的a同学就会被排到第一,这种情况我们称为稳定排序,反之如果学号在前面的a同学并没有排到第一,而是b同学排到第一,那么我们称为不稳定排序。对于排序而言我们还分为了两种形式:内排序:在排序整个过程中,待排序的所原创 2021-08-22 22:46:44 · 700 阅读 · 2 评论 -
C语言实现平衡二叉树
文章目录前言一、平衡二叉树实现原理二、平衡二叉树实现算法三、全部代码前言对于判断是否为平衡二叉树而言,我们需要知道以下特性:是一个二叉树也是一个二叉排序树该树的每个结点上的(深度)左子树 - 右子树的值为平衡因子(BF(Balance Factor))该树的每一个节点的左子树和右子树的高度至多等于1(平衡因子只可能是-1,0,1)对于一个二叉排序树而言,它们的结构都是根据了二叉树的特性从最左子树开始在回到该结点上继续往右结点走,通过该方式进行递归操作,并且该二叉排序树的结构也是从小到大依原创 2021-08-19 00:10:06 · 2476 阅读 · 0 评论 -
c语言实现八皇后回溯算法
1.声明源代码是参考了小甲鱼的数据结构和算法的,然后自己又实现了一遍。2.代码块```c#include<stdio.h>int count = 0;//全局变量来记录八皇后的走法int notDanger(int row, int j, int(*a)[8]){ int i,flag=0,k,flag2=0,flag3=0,flag4=0,flag5=0; //判断列有没有皇后= = for (i = 0; i < 8; i++) { if (*(*(a原创 2020-05-24 12:55:59 · 390 阅读 · 0 评论 -
c语言实现队列遍历和删除
1.声明此代码有参考小甲鱼的数据结构的算法,写出来怕自己忘记,不说了直接上代码吧!#include<stdio.h>#include<stdlib.h>typedef struct Qnode{ char data; struct Qnode* next;}Qnode,*QueuePrt;typedef struct { Qnode *front;//队列头 Qnode * read; }LinkQueue;//初始化队列int initQ原创 2020-05-17 21:26:47 · 4368 阅读 · 0 评论 -
c语言实现维吉尼亚加密
1.声明此程序是我自己手敲的,可能会有很多未知的bug我不清楚,我也是小白,刚学完线性表想分享一下,希望大佬看了代码能指出优化。这是我用双向链表写出来的,话不多说直接上代码!#include<stdio.h>#include<stdlib.h>#include<malloc.h>#include<time.h>typedef struct node{ char data; int num; struct node* prior;//前原创 2020-05-11 20:57:31 · 1181 阅读 · 0 评论