chenshengnannn
码龄3年
关注
提问 私信
  • 博客:47,395
    47,395
    总访问量
  • 18
    原创
  • 1,341,860
    排名
  • 134
    粉丝
  • 1
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:四川省
  • 加入CSDN时间: 2021-10-10
博客简介:

chenshengnanii的博客

查看详细资料
个人成就
  • 获得127次点赞
  • 内容获得29次评论
  • 获得768次收藏
  • 代码片获得3,464次分享
创作历程
  • 18篇
    2022年
成就勋章
创作活动更多

HarmonyOS开发者社区有奖征文来啦!

用文字记录下您与HarmonyOS的故事。参与活动,还有机会赢奖,快来加入我们吧!

0人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

图的遍历(C语言)

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

哈夫曼树(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 ·
1821 阅读 ·
1 点赞 ·
1 评论 ·
30 收藏

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 ·
4157 阅读 ·
8 点赞 ·
11 评论 ·
96 收藏

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

一、二叉树的概念以及结构二叉树是n(n>=0)个节点的有限集合,该集合或者为空集(称为空二叉树),或者由一个根节点和两棵互不相交的、分别称为根节点的左子树和右子树组。二、二叉树的遍历图解先序遍历中序遍历后序遍历层次遍历...
原创
发布博客 2022.05.24 ·
27248 阅读 ·
81 点赞 ·
5 评论 ·
585 收藏

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

一、头文件二、二叉树的结构三、递归创建二叉树四、前序遍历五、中序遍历六、后序遍历七、主函数一、头文件#include <stdio.h>#include <stdlib.h>#define MAXSIZE 5二、二叉树的结构typedef struct BTnode{ int data; struct BTnode *left; struct BTnode *right;}*BTnodePtr;三、递归创建二..
原创
发布博客 2022.05.24 ·
138 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

压缩矩阵的转置

一、头文件二、结构体三、初始化四、转置过程五、测试函数六、主函数七、运行结果一、头文件#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 ·
102 阅读 ·
1 点赞 ·
2 评论 ·
0 收藏

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

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

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

一、头文件二、循环结点三、初始化四、插入五、删除六、打印七、测试代码八、主函数九、全部代码十、测试结果十一、总结一、头文件#include <stdio.h>#include <malloc.h>#define MAXSIZE 5二、循环结点typedef struct CircleIntQueue{ int data[MAXSIZE]; int head; int tail;}*CircleIntQueue
原创
发布博客 2022.05.16 ·
2420 阅读 ·
5 点赞 ·
0 评论 ·
28 收藏

数据结构—链队(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 ·
1313 阅读 ·
1 点赞 ·
1 评论 ·
9 收藏

累加—递归&&汉罗塔问题 (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
"
原创
发布博客 2022.05.11 ·
1583 阅读 ·
4 点赞 ·
2 评论 ·
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 ·
96 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

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

目录一、头文件二、栈的结构三、初始化四、判断是否为空五、判断是否为满六、输出栈七、进栈八、出栈九、测试代码十、括号匹配代码十一、main函数十二、总结一、头文件#include <stdio.h>#include <stdlib.h>#include <malloc.h>#define MAXSIZE 10二、栈的结构typedef struct CharStack{ int top; in
原创
发布博客 2022.05.09 ·
850 阅读 ·
3 点赞 ·
1 评论 ·
7 收藏

顺序表的插入操作

本题要求实现一个函数,在顺序表的第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 ·
853 阅读 ·
2 点赞 ·
0 评论 ·
1 收藏

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

一、头文件二、链表结构三、链表的初始化四、链表的打印五、插入元素六、多项式相加七、测试函数八、main函数九、总结一、头文件#include <stdio.h>#include <malloc.h>#include <stdlib.h>二、、链表结构typedef struct LinkNode{ int coef; int expon;//指数 struct LinkNode *next;}*LinkL
原创
发布博客 2022.05.05 ·
759 阅读 ·
3 点赞 ·
3 评论 ·
3 收藏

数据结构—静态链表

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

数据结构—双向链表

目录一、老师的代码二、自己的代码一、老师的代码二、自己的代码二、测试结果二、自己的代码一、储存结构二、初始化三、打印四、按位查找五、求前驱六、按位插入七、按位删除元素八、删除固定元素九、统计元素个数十、摧毁链表十一、插入删除测试十二、地址打印十三、main函数十四、测试结果十五、总结一、老师的代码一、源代码#include <stdio.h>#include <.
原创
发布博客 2022.05.02 ·
742 阅读 ·
3 点赞 ·
0 评论 ·
0 收藏

数据结构—链表

一、老师的代码(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 ·
362 阅读 ·
3 点赞 ·
0 评论 ·
3 收藏

数据结构—顺序表

目录一、老师的代码#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 ·
709 阅读 ·
4 点赞 ·
2 评论 ·
0 收藏
加载更多