自定义博客皮肤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)
  • 收藏
  • 关注

原创 二叉树的非递归遍历与递归打印 先序遍历

#include<stdio.h>#include<stdlib.h>#include<string.h>#define max_size 20 //person姓名的大小#define my_false 0#define my_true 1//栈typedef struct StackNode{ struct StackNode* ne...

2020-02-25 21:36:17 133

原创 循环链表企业链表

一、特点让链表的最后一个结点的next指针指向头结点。初始化小节点时直接让next指针指向链表的头结点。二、代码#include<stdio.h>#include<stdlib.h>#include<string.h>//小结点typedef struct LISTNODE{ LISTNODE *next;}ListNode;//链表结点...

2020-02-20 16:06:11 127

原创 斐波那契数列 迭代和递归的区别

#include<stdio.h>//斐波那契数列//0 1 1 2 3 5 8 13 21......int Fbi(int i){ if(i<2) return i == 0 ? 0 : 1; else return Fbi(i-1)+Fbi(i-2);}int main(){ //普通方法 int a[40]; a[0] = 0; a[1]...

2020-02-19 13:10:07 274

原创 数组中容易出现的一些问题

一、代码#include<stdio.h>//数组// 1、在定义数组的同一个函数中,sizeof(arr),表示整个数组;// 2、在定义数组的同一个函数中,&arr+1,表示加整个数组的大小;// 3、其他情况arr表示首元素的地址int fun(int arr[10])//指针(32位4字节,64位8字节){ printf("%d\n",sizeo...

2020-02-11 13:03:09 311

原创 快速排序及其优化

一、特点当划分均匀时快速排序的时间复杂度是O(nlogn),空间复杂度是O(logn)。当划分完全不均匀时时间复杂度是O(n²),空间复杂度是O(n)。二、思想快排是对冒泡的进一步改进,它的思想是分治和递归。通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数...

2020-02-09 16:35:22 342

原创 冒泡排序及其优化

一、冒泡排序是一种简单的稳定的排序方法算法最好时间最坏时间平均时间额外空间稳定性冒泡O(n)O(n2)O(n2)1稳定二、代码及其优化常规的方法1、代码int main(){ int arr[] = {1,3,4,6,5,2}; int len = sizeof(arr)/sizeof(arr[1]); int temp = 0; pr...

2020-02-08 21:13:24 149

原创 单链表概念及代码

一、概念单链表是一种链式存储的数据结构,用一组地址任意的存储单元存放线性表中的数据元素。链表中的数据是以结点来表示的,每个结点的构成:元素(数据元素的映象) +指针(指示后继元素存储位置),元素就是存储数据的存储单元,指针就是连接每个结点的地址数据。二、代码1、头文件#include<stdio.h>#include<assert.h>#include<s...

2020-02-03 12:46:26 307

原创 静态链表概念及代码

一、顺序表与静态链表的不同1、顺序表和静态链表的物理结构(即存储结构)是相同的,在计算机内存中以数组的形式保存的线性表,是用一组地址连续的存储单元依次存储数据元素的线性结构,但两者的数据结构(逻辑结构)是不同的。2、顺序表:着眼于整个数组,采用动态分配的一维数组,仍然借助了指针进行数据操作,具体描述如下:typedef struct{int *elem;int length;int ...

2020-02-02 02:55:41 303

原创 动态顺序表概念及代码

一、动态顺序g表概念在静态顺序表的基础上添加一个判断有效元素是否等于最大容量的函数,并且当有效元素等于最大容量时对最大容量进行扩容。二、代码展示1、头文件#include<stdio.h>#include<string.h>#include<assert.h>#include<stdlib.h>2、顺序表的声明#define in...

2020-01-31 13:34:32 143

原创 静态顺序表概念及代码

一、顺序表的概念按照线形表的逻辑顺序,依次存储到一块连续的存储空间中。二、特点1、优点是可以按照下标进行访问,与数组相似,比较方便。2、缺点是如果需要插入或删除元素,则需要移动大量的元素。三、代码展示1、头文件#include<stdio.h>#include<assert.h>#include<string.h>2、顺序表的声明#def...

2020-01-31 13:17:11 208

原创 内存重叠与内存对齐

内存重叠将长度为n的数组的后m个数据移到前面void Move(int *arr,int n,int m){if(m&lt;=0 || m&gt;=n){return ;}int *brr = (int )malloc(msizeof(int));//int brr[m];int i;for(i=0;i&lt;m;i++) //将后面的m个数据另外保存{ brr[i] = ...

2019-03-15 17:53:03 150

原创 结构体大小的判断

结构体大小struct A{int a;int b;};struct B{char a;//1+3//char tmp[3];//保留不用int b;//4};//8struct C{char a;//1+1short b;//2int c;//4};//8struct D{char a;//1+3int b;//4short c;//2};//10+...

2019-03-15 17:47:32 311

原创 动态内存及相关函数

malloc —— 申请内存calloc —— 初始化为0realloc —— 修改内存大小(扩大,缩小)free —— 释放内存,内存泄漏malloc:int *arr = (int ) malloc (nsizeof(int)) ;malloc函数只调出申请的空间,返回所调出空间的首地址,需强转成需要的数据类型;calloc:动态申请100整型单元,并且每个单元值为0int*...

2019-03-15 17:24:38 99

原创 指针的加减法

指针+n:加n个单元格指针-n:减n个单元格指针加法#include&lt;stdio.h&gt;int main(){int p=(int)1000printf("%d\n",p-2);printf("%d\n",(short *)p+4);//1008,printf("%d\n",(char *)p+4);//1004printf("%d\n",(double *)p+4)...

2019-03-05 13:56:10 167

原创 折半查找法

折半查找法int main(){const int n=10;int i,number,top,bott,mid,loca,a[n];//mid用bott和top表示,方便迭代。bool flag=true,sign;//设置布尔变量即标志位。char c;cout&lt;&lt;“enter data:”&lt;&lt;endl;cin&gt;&gt;a[0];i=1;w...

2019-03-04 22:44:53 370

原创 复制字符串

#include&amp;lt;stdio.h&amp;gt;/int main(){char str1[10]=“abcd”;char str2[10];int i=4;for(int i=0;str1[i]!=’\0’;i++){str2[i]=str1[i];}str2[i]=’\0’;printf(“str1=%s,str2=%s\n”,str1,str2);}///用数组vo...

2019-03-04 21:58:49 146

原创 const的使用和strlen与sizeof的区别

1.作用定义常变量,不允许修改其值eg:int const ca=10;ca值则不允许再改变。int const ca;//error(const不允许定义一个变量。)2.规则基本的数据类型对于const是透明。eg:int const ca=0;const int cb=0.等价const修饰它的直接右边。int *const p=&amp;amp;a。p=&amp;amp;b ...

2019-03-04 18:37:33 179

原创 给一个正整数,要求:1.求出它是几位数;2.分别输出每一位数字;3.按逆序输出每一位数字,例如原数为321,应输出123。

//统计n是个位数字//算法:每次丢弃个位数字(n/=10)int GetFigures(int n){int i;for(i=0;n != 0 ; i++){n=n/10;}return i;}//顺序输出,1234-&gt;1 2 3 4//算法:调用求位数的函数,确认该正整数为几位数;利用循环求出,取得该正整数最高位应整除的数void PrintOrder(int ...

2019-02-26 16:46:46 800

空空如也

空空如也

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

TA关注的人

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