自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C语言单链表删除包含某个值的所有节点

/* 删除包含某个值得所有节点,思路遍历计算出该值 出现的次数,然后写个大循环在里面处理值所在的节点在头部,中间,尾部的情况*/struct llist_node* llist_delete(struct llist_node* head, int value){ struct llist_node* tmp = head; struct llist_node* pt...

2020-04-27 22:03:26 1714

原创 简单选择排序

简单选择排序思路:每一趟在n-i+1 个记录中选取关键字最小的记录作为有序序列中的第i 个记录。实现步骤:首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置。再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。重复第二步,直到所有元素均排序完毕时间复杂度为O(n^2)#include<stdio.h>void select_sort(int b[], int length);int main(){ int length = 0;

2020-08-08 16:31:11 161

原创 快速排序C语言

快速排序是对气泡排序的一种改进,思想是:通过一趟排序将待排记录分割成独立的两部分,其中一部分记录的关键字均比另一部分记录的关键字小,则可分别对这两部分记录继续进行排序,以此达到整个序列有序。具体做法为:先将枢轴记录存起来,附设两个指针low和high,初值分别为low high,设枢轴记录的关键字为pivotkey,则首先从high所指位置起向前搜索找到第一个小于pivotkey的关键字记录移到低端,然后从low 所指位置起向后搜索,找到关键字大于pivotkey 的记录移动到高端,重复这两步骤直至lo

2020-08-08 10:34:52 272

原创 直接插入排序

直接插入排序思路:一般情况下,第i 趟直接插入排序的操作为: 在含有i-1 个记录的有序子序列r[1…i-1]中插入一个记录r[i] 后,变成含有i个记录的有序子序列人r[1,i];并且,和顺序查找类似,为了在查找插入位置的过程中避免数组越界,在人r[0]处设置监视哨。在自i-1 起往前搜索的过程中,可以同时后移记录。整个排序过程为进行n-1趟插入,即:先将序列中的第一个记录看成是一个有序的子序列,然后从第二个记录起逐个进行插入,直至整个序列变成按关键字非递减有序列为止。直接插入排序的时间复杂度为0(n

2020-08-01 11:33:45 272

原创 git 常用命令

git clone https://github.com/c005machao5/machao.gitgit romote add orgin https://github.com/c005machao5/machao.gitgit config --global user.namegit config --global user.emailgit add ./TESTgit statusgit commit -m "第一次提交"git push -f origin mastergi...

2020-07-04 17:48:52 94

原创 C语言二叉树建立及前序、中序、后序遍历,叶子节点,深度

struct BiTNode {int val;struct BiTNode* lchild;struct BiTNode* rchild;};//树的构建 思路递归方法struct BiTNode* Create(){int val;scanf_s("%d", &val);struct BiTNode* root = (struct BiTNode*)malloc(...

2020-05-06 22:21:55 380

原创 循环链表与双向链表

struct llist_node* create_llist_Circular(int number){struct llist_node* head = NULL;int value = 1;head = (struct llist_node*)malloc(sizeof(struct llist_node));head->value = value++;head->n...

2020-05-03 16:12:36 123

原创 C语言链表排序

struct llist_node* llist_sort(struct llist_node* head){struct llist_node* tmp = head;struct llist_node* begin = head;if (head==NULL&&head->next==NULL){ return head;}while (begin){...

2020-04-30 19:19:05 1400

原创 C 语言大小端

在计算机中存在两种字节序:大端和小端,大端是指计算机中表示一个数时高位在前,低位在后,也就是说低地址存放数据的高位部分,而高地址存放数据的低位部 分union world {int a;char b;};void print_litter(){union world c;c.a = 1;if (c.b == 1){printf(“litter\n”);}else if (...

2020-04-30 19:16:07 116

原创 C语言单链表

C与C++学习1.冒泡排序2.单链表(一)常见操作创建,遍历,逆序,释放#include<stdio.h>#include<malloc.h>/*struct llist/struct llist_node {int value;struct llist_node next;};/*create single llist/struct llis...

2020-04-25 16:13:27 144

原创 C语言 冒泡排序

基本步骤:1、外循环是遍历每个元素,每次都放置好一个元素;   2、内循环是比较相邻的两个元素,把大的元素交换到后面;3、等到第一步中循环好了以后也就说明全部元素排序好了;代码实现#include<stdio.h>//打印数组元素void print_array(int *array, int length){ i...

2020-04-22 21:52:53 119

空空如也

空空如也

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

TA关注的人

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