自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 图的遍历(C语言)

深度遍历深度遍历:从起始节点沿着树的深度遍历树的节点,尽可能深的搜索树的分支。当节点v的所在边都己被探寻过或者无法继续往下搜索时,搜索将回溯到发现节点v的那条边的起始节点,整个进程反复进行直到所有节点都被访问为止。二叉树的前序遍历就是一种深度优先搜索。广度遍历广度遍历:从起始节点开始一层一层的进行遍历,只有完全遍历完一层所有的节点后才会进入下一层的遍历。二叉树的层序遍历就是一种广度优先搜索。一、队列的结构 二、队列的初始化 三、判断队列是否为空 四、入队 五、出队 七、图的结构

2022-06-01 10:48:40 1105

原创 哈夫曼树(C语言)

一、定义哈夫曼树(Huffman Tree)是在叶子结点和权重确定的情况下,带权路径长度最小的二叉树,也被称为最优二叉树。二、代码#include <stdio.h>#include <stdlib.h>#include <string.h>#define N 30#define Max 2*N-1typedef char **HuffmanCode;typedef struct HTNode{ double w..

2022-05-29 22:05:09 1755 1

原创 N皇后问题(C语言)—回溯法

一、问题描述问题描述:在N×N格的国际象棋上摆放N个皇后,使其不能互相攻击,即不能处于同一列或同一行,也不能处在同一斜线上,请问有多少种摆法?不能放皇后的位置及位置之间的关系:二、代码实现#include <stdio.h>int array[20];//数组大小,a[i] = j表示第i个皇后放在第i行的第j个位置 int n,cnt;//n为皇后的个数 int check(int x,int y)//x为行,y为放置的位置 { int i...

2022-05-28 11:31:45 4060 11

原创 二叉树的层次遍历(C语言)

一、二叉树的概念以及结构二叉树是n(n>=0)个节点的有限集合,该集合或者为空集(称为空二叉树),或者由一个根节点和两棵互不相交的、分别称为根节点的左子树和右子树组。二、二叉树的遍历图解先序遍历中序遍历后序遍历层次遍历...

2022-05-24 17:50:04 26295 5

原创 二叉数的前序,中序,后序(递归)

一、头文件二、二叉树的结构三、递归创建二叉树四、前序遍历五、中序遍历六、后序遍历七、主函数一、头文件#include <stdio.h>#include <stdlib.h>#define MAXSIZE 5二、二叉树的结构typedef struct BTnode{ int data; struct BTnode *left; struct BTnode *right;}*BTnodePtr;三、递归创建二..

2022-05-24 17:00:56 114

原创 压缩矩阵的转置

一、头文件二、结构体三、初始化四、转置过程五、测试函数六、主函数七、运行结果一、头文件#include <stdio.h>#include <malloc.h>二、结构体typedef struct Triple{ int i; int j; int e;}Triple,*TriplePtr;typedef struct CompressedMatrix{ int rows,columns,numElements;

2022-05-20 22:16:36 88 2

原创 C语言实现动态二维数组及相乘

一、二维数组的概念1、二维数组本质上是以数组作为数组元素的数组,即数组的数组。2、二维数组就是一个有行和列的矩阵,每一行代表一个数组,即数组的数组。3、每一行数组内元素所在的位置可以用行和列号来表示。二、代码部分一、头文件二、动态二维数组的结构三、初始化四、随机赋值五 、打印六、相乘七、测试代码八、主函数九、测试结果十、总结一、头文件#include <stdio.h>#include <malloc.h>#in.

2022-05-19 21:05:35 2247 1

原创 数据结构—循环队列(C语言)

一、头文件二、循环结点三、初始化四、插入五、删除六、打印七、测试代码八、主函数九、全部代码十、测试结果十一、总结一、头文件#include <stdio.h>#include <malloc.h>#define MAXSIZE 5二、循环结点typedef struct CircleIntQueue{ int data[MAXSIZE]; int head; int tail;}*CircleIntQueue

2022-05-16 20:36:06 2245

原创 数据结构—链队(C语言)

#include <stdio.h>#include <malloc.h>//队列结点typedef struct QueueNode{ int data; struct QueueNode *next;}*QueueNodePtr;typedef struct LinkQueue{ QueueNodePtr front; QueueNodePtr tail;}*LinkQueuePtr;//队列的初始化LinkQueu...

2022-05-16 19:52:30 1251 1

原创 累加—递归&&汉罗塔问题 (C语言)

一、累加—递归一、代码二、测试结果二、汉罗塔问题一、代码二、测试结果一、累加—递归一、代码//累加的递归实现#include <stdio.h>int addTo(int n){ if(n <= 0) return 0; else { return addTo(n-1)+n; }}void addToTest(){ int n,sum; printf("----addToTest begins.----\r\n"

2022-05-11 22:28:50 1536 2

原创 表达式求值

#include <stdio.h>#include <stdlib.h>#include <malloc.h>#define MAXSIZE 10typedef struct CharStack{ int top; int data[MAXSIZE];}*CharStackPtr;//初始化CharStackPtr initStack(){ CharStackPtr newPtr = (CharStackPtr)malloc(sizeof(.

2022-05-10 22:10:33 80

原创 栈(stack)(C语言实现)及括号配对问题

目录一、头文件二、栈的结构三、初始化四、判断是否为空五、判断是否为满六、输出栈七、进栈八、出栈九、测试代码十、括号匹配代码十一、main函数十二、总结一、头文件#include <stdio.h>#include <stdlib.h>#include <malloc.h>#define MAXSIZE 10二、栈的结构typedef struct CharStack{ int top; in

2022-05-09 21:43:44 805 1

原创 顺序表的插入操作

本题要求实现一个函数,在顺序表的第i个位置插入一个新的数据元素e,插入成功后顺序表的长度加1,函数返回值为1;插入失败函数返回值为0;函数接口定义:int ListInsert(SqList &L,int i,ElemType e); 其中SqList结构定义如下:typedef struct{ ElemType *elem; int length; }SqList; 裁判测试程序样例:#include <stdio.h>#incl..

2022-05-06 14:59:38 804

原创 链表的运用—多项式相加减

一、头文件二、链表结构三、链表的初始化四、链表的打印五、插入元素六、多项式相加七、测试函数八、main函数九、总结一、头文件#include <stdio.h>#include <malloc.h>#include <stdlib.h>二、、链表结构typedef struct LinkNode{ int coef; int expon;//指数 struct LinkNode *next;}*LinkL

2022-05-05 19:42:22 716 3

原创 数据结构—静态链表

1、静态链表的认知使用静态链表存储数据,数据全部存储在数组中(和顺序表一样),但存储位置是随机的,数组的元素都是由两个数据域组成,data和cur,数据域data用来存储数据,而cur相当于单链表中的next指针,存放该元素的后继在数组中的下标,我们把cur称作游标。2、静态链表的结构#include <stdio.h>#define MAXSIZE 100typedef struct { int data;//数据域 int cur;//指针域 }Compo

2022-05-03 20:33:07 557

原创 数据结构—双向链表

目录一、老师的代码二、自己的代码一、老师的代码二、自己的代码二、测试结果二、自己的代码一、储存结构二、初始化三、打印四、按位查找五、求前驱六、按位插入七、按位删除元素八、删除固定元素九、统计元素个数十、摧毁链表十一、插入删除测试十二、地址打印十三、main函数十四、测试结果十五、总结一、老师的代码一、源代码#include <stdio.h>#include &lt.

2022-05-02 22:38:11 724

原创 数据结构—链表

一、老师的代码(1)源代码#include <stdio.h>#include <malloc.h>typedef struct LinkNode { char data; struct LinkNode *next; }LNode,*LinkList,*NodePtr; //链表的初始化LinkList initLinkList() { NodePtr tempHeader = (NodePtr)malloc(sizeof(LNode)); t

2022-04-29 11:32:46 342

原创 数据结构—顺序表

目录一、老师的代码#include <stdio.h>#include <malloc.h>#define LIST_MAX_LENGTH 10/** * Linear list of integers. The key is data. */typedef struct SequentialList { int actualLength; int data[LIST_MAX_LENGTH]; //The maximum length is

2022-04-25 21:20:38 622 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除