自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Makefile

Makefile文件包含五个方面内容:1.具体规则;2.隐含规则;3.定义变量;4.指令;5.注释;示例:CC = gccTarget = helloObject = hello.o$(Target) : $(Object)(Tab字符) $(CC)   $(Object)    -o   $(Target).PHONY :  cleanclean:(Tab字符) rm  *.o   hello...

2018-03-27 20:25:30 99

原创 希尔排序

#include <stdio.h>void ShellSort(int array[], int length){ int i, j; int h; int temp; for (h = length / 2; h > 0; h = h / 2) { for (i = h; i < length; i++) { temp = array[i]; for (j ...

2018-03-09 13:38:42 123

原创 选择排序

#include <stdio.h>void SelectSort(int *a, int n){ int i, j; int temp = 0; int flag = 0; for (i = 0; i < n - 1; i++) { temp = a[i]; flag = i; for (j = i + 1; j < n; j++) { if (a[j] &l...

2018-03-09 13:38:06 127

原创 冒泡排序

#include <stdio.h>void BubbleSort(int array[], int len){ int i, j; int temp; for (i = 0; i < len -1; ++i) { for (j = len - 1; j > i; --j) { if (array[j] < array[j - 1]) { temp ...

2018-03-09 13:37:53 92

原创 快速排序

#include <stdio.h>void Sort(int array[], int low, int high){ int i, j; int index; if (low >= high) { return; } i = low; j = high; index = array[i]; while (i < j) { while (i < j &&...

2018-03-09 13:37:31 82

原创 堆排序

#include <stdio.h>void AdjustMinHeap(int *a, int pos, int len){ int temp; int child; for (temp = a[pos]; 2 * pos + 1 <= len; pos = child) { child = 2 * pos + 1; if (child < len &&amp...

2018-03-09 13:37:15 73

原创 直接插入排序

#include <stdio.h>void InsertSort(int par_array[], int array_size){ int i, j; int temp; for (i = 1; i < array_size; i++) { temp = par_array[i]; for (j = i - 1; j >= 0; j--) { if (temp...

2018-03-09 13:36:57 90

原创 归并排序

#include <stdio.h>#include <stdlib.h>void Merge(int array[], int start, int middle, int end){ int i, j, k, n1, n2; n1 = middle - start + 1;               n2 = end - middle;  int *L = (int...

2018-03-09 13:36:40 88

原创 基数排序

#include <stdio.h>  #include <stdlib.h>  int RadixCountSort(int *index, int *a, int len)    //收集 {   int *count = (int *)malloc(sizeof(int) * 10); int i;    for (i = 0; i < len; ++i)   ...

2018-03-09 13:36:23 74

原创 进程间通信预习

1. 什么是共享内存共享内存是被多个进程共享的一部分物理内存。共享内存是进程间共享数据的一种最快的方法,一个进程向共享内存区域写入了数据,共享这个内存区域的所有进程就可以立刻看到其中的内容。2. 共享内存实现的步骤:(1)创建共享内存,使用shmget函数;(2)映射共享内存,将这段创建的共享内存映射到具体的进程空间去,使用shmat函数。3. 共享内存的创建key标识共享内存的键值: 0/IPC...

2018-02-26 19:39:24 109

原创 栈预习

1. 栈:是限定仅在表尾进行插入和删除操作的线性表;又称后进先出的线性表。LIFO结构。     栈顶top:允许插入和删除的一端; 栈底bottom:另外一端; 2. 栈的操作: 进栈,压栈,入栈:栈的插入操作;     出栈,弹栈:栈的删除操作; 栈中有一个元素时,top=0; 空栈时,top=-1; 3. 链式栈 栈的链式存储结构是通过由结点构成的单链表实现的,此时表头指

2018-02-07 11:02:08 237

原创 队列预习

1. 队列定义 队列属于先进先出型, 队列是一种特殊的线性表,只能在前端(front)进行删除操作,只能在后端(rear)进行删除操作 2. 顺序队列 每次插入,指针rear加一,每次删除,指针front加一 3. 循环队列 初始化时,rear = front=0,当队列不为空时,front指向队列中的第一个元素,rear指向队列中最后一个元素的下一个位置,当队列满时 rear=fro

2018-02-07 10:03:56 115

原创 线性表的链式存储结构

1. 链式存储 用一组任意的存储单元存储线性表中的数据元素。用这种方法存储的线性表简称线性链表。存储链表中结点的一组任意的存储单元可以是连续的,也可以是不连续的,甚至是零散分布在内存中的任意位置上的。链表中结点的逻辑顺序和物理顺序不一定相同。为了正确表示结点间的逻辑关系,在存储每个结点值的同时,还必须存储指示其直接后继结点的地址,称为指针或链,这两部分组成了数据元素ai的存储映像。链表是通过每

2018-02-03 20:00:07 183

原创 顺序表

List list; 头文件 typedef int DataType;   struct SequenceList { DataType *data; int length; }; typedef struct SequenceList List;   int InitSequence(List *l); int EmptySequence(List l); int

2018-02-03 16:33:24 120

原创 数据结构预习

1. 顺序存储方式: 线性表的顺序存储结构,指的是用一段地址连续的存储单元依次存储线性表的数据元素。 顺序存储结构封装三个属性:   (1) 存储空间的起始位置。   (2) 线性表的最大存储容量。 (3) 线性表的当前长度。 注意:数组的长度与线性表的当前长度不一样;数组的长度是存放线性表的存储空间的总长度,一般初始化后不变;而线性表的当前长度是线性表中元素的个数,是会变化的。

2018-02-01 20:57:28 250

原创 第6/7章预习

1.  数据存放在哪? A. bss段存放没有初始化和初始化为0的全局变量; B. data段存放初始化为非0的全局变量; C. rodata存放常量数据; D. text段存放代码和部分整数常量; E. 栈(stack)存放临时变量和函数参数; F. 堆(heap)最灵活的内存,生命周期由使用者控制。 2. bss段和data段区别 bss的全局变量只占运行时的内存空间,而不占用

2018-01-30 18:16:03 170

原创 指针预习

1.  指针是什么?     指针是变量,所以指针有变量的特性:a.系统为指针分配内存空间;b.指针有自己的 地址;c.指针能够存值,但这个值比较特殊——地址。 2.  指针的类型和指针所指向的类型 指针的类型:把指针声明语句中指针名字去掉,剩下的部分即为这个指针的类型; 指针所指向的类型:把指针声明语句中的指针名字和名字左边的指针声明符”*”去掉,剩下的就是指针所指向的类型。 3.

2018-01-28 19:54:06 173

原创 5.1,5.2 第八章预习

1. 数组优点: (1)C语言数组下标在一个很低的层次上处理,但在程序运行时无法知道数组大小及 其下标是否有效。 (2)数组出现在表达式时和指向数组中第一个指针等价(指针比使用数组下标快2倍)。 数组作为参数传递给函数等价于指向数组中第一个元素的指针。数组作为参数传递给函 数时采用:值传递与地址传递。 2. 字符数组的收入输出    方法:逐个字符输入输出。用格式符“%c”输入或输出一个

2018-01-26 21:33:40 146

原创 第二、三章预习问题

1.  字符是有符号整数还是无符号整数?     无符号整数 2. 什么是变量    其值在其作用域内可改变的量。变量在使用前必须要定义,每个变量都有自己的地址。变量的值是变量所对应的内存区域内存放的二进制序列。变量在内存中存放和其值无关,和其类型相关。 3. 局部变量和全局变量 作用域:形参变量只有在函数内才有效,立开改函数就不能再使用,变量有效性的范围即作用域。 局部变量:在函数内

2018-01-24 21:06:29 106

原创 Linux常用命令笔记

文件处理命令: 1.  mkdir 创建目录 用法:mkdir  [选项] 目录,若目录不存在则创建目录 选项: -m:设定权限,与chmod类似 -p:需要时创建上层目录 -v:每次创建新目录都显示信息 2.  find 查找文件 用法:find [路径...] [表达式] 3.  grep 查找字符串 用法:grep[选项] 字符串 选项: -c:只输出匹配行的计数

2018-01-24 15:43:09 109

空空如也

空空如也

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

TA关注的人

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