随笔分类 - 01.Language
摘要:函数原型:FILE * fopen(const char * path,const char * mode); 返回值:文件顺利打开后,指向该流的文件指针就会被返回。如果文件打开失败则返回NULL,并把错误代码存在errno中。 一般而言,打开文件后会做一些文件读取或写入的动作,若打开文件失败,接下
阅读全文
摘要:-- DList.c DList.h main.c --
阅读全文
摘要:-- 所谓链表记住一句即可:地址不连续,大家只是握个手而已; list0.c list.c list.h main.c -- 原创: http://blog.csdn.net/hopeyouknow/article/details/6711216 --
阅读全文
摘要:什么是链表,这种数据结构是由一组Node组成的,这群Node一起表示了一个序列。链表是最普通,最简单的数据结构(物理地址不连续),它是实现其他数据结构如stack, queue等的基础。 链表比起数组来,更易于插入,删除。 Node可以定义如下: 另外关于要不要头节点这个问题,我建议加上头节点,理由
阅读全文
摘要:void *memcpy(void *dest, const void *src, size_t n); 从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest所指的内存地址的起始位置
阅读全文
摘要:break 结束当前 for,foreach,while,do-while 或者 switch 结构的执行。从循环外代码执行; break 可以接受一个可选的数字参数来决定跳出几重循环; continue,跳出本次循环,从下次执行; 如: var i = 0for(i = 0; i <= 10; i
阅读全文
摘要:1. 用宏定义写出swap(x,y) 2.数组a[N],存放了1至N-1个数,其中某个数重复一次。写一个函数,找出被重复的数字.时间复杂度必须为o(N)函数原型: 例子: 1,2,3,4,5,6,7,7,8,9 1,2,3,4,5,6,7,8,9,10 那么7就是a[6],找到a[6]的位置, 也就
阅读全文
摘要:单链表逆转 单链表逆转算法草图如下: 方法1:借助辅助空间 建立临时的新链表,将新节点指向其前驱结点实现逆转: #include <stdio.h> #include <conio.h> #include<malloc.h> //#include "alloc.h" typedef struct /
阅读全文
摘要:1:简单除法 int i = 128; //待判断的整数 int count = 1; //待判断的整数是2的count次方while (i){if (2 == i){printf("YES: %d\n",count);break;}if (0 == i%2){i /= 2;count++;}els
阅读全文
摘要:assert()宏是用于保证满足某个特定条件,用法是: assert(表达式); 如果表达式的值为假,整个程序将退出,并输出一条错误信息。如果表达式的值为真则继续执行后面的语句。 使用这个宏前需要包含头文件assert.h 例如 #include <stdio.h> #include <assert
阅读全文
摘要:linux的文本文件与二进制文件的区分与windows的区分是相同的!说到底计算机存储的文件都是以二进制形式存储的,但是区别是,习惯上认为:(1)、文本文件文本文件是包含用户可读信息的文件。这些文件以ASCII码方式存储,可显示和打印。文本文件的行不能包括空字符(即码中的NULL),行的最大长度(包
阅读全文
摘要:大体上和 @丁戍 说的差不多。简单说O(n²)表示当n很大的时候,复杂度约等于Cn²,C是某个常数,简单说就是当n足够大的时候,n的线性增长,复杂度将沿平方增长。O(n)也是差不多的意思,也就是说n很大的时候复杂度约等于Cn,C是某个常数。O(1)就是说n很大的时候,复杂度基本就不增长了,基本就是个
阅读全文
摘要:算法一直是编程的基础,而排序算法是学习算法的开始,排序也是数据处理的重要内容。所谓排序是指将一个无序列整理成按非递减顺序排列的有序序列。排列的方法有很多,根据待排序序列的规模以及对数据的处理的要求,可以采用不同的排序方法。那么就整理下网上搜索的资料,按自己的理解,把C语言的8大排序算法列出来。 普通
阅读全文
摘要:二、插入类排序 插入排序(Insertion Sort)的基本思想是:每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的子文件中的适当位置,直到全部记录插入完成为止。 插入排序一般意义上有两种:直接插入排序和希尔排序,下面分别介绍。 3、直接插入排序 基本思想: 最基本的操作是将第i个记录
阅读全文
摘要:分为两大类: 一:静态存储区(只做一次初始化,不关机不丢失,结果维持一份) 外部变量+静态变量(静态变量按定义以及作用域又分:①源文件下的,②某个函数中的,③某个函数中的某几句用{}括起来的) 结果维持一份; 二:栈stack(每次调用都会初始化,每个被调用中维持一份拷贝) 一般变量 三:堆heap
阅读全文
摘要:内容接自《数据结构基础知识(1)》。。。 链表的分类 单链表 单链表是一种链式存取的结构,为找第 i 个数据元素,必须先找到第 i-1 个数据元素。图中阴影区域表示数据域,空白区表示指针域。而且最后一个指针域为空。 循环链表 循环链表是另一种形式的链式存贮结构。它的特点是表中最后一个结点的指针域指向
阅读全文
摘要:队列特性:先进先出(FIFO)——先进队列的元素先出队列。来源于我们生活中的队列(先排队的先办完事)。 队列有下面几个操作: InitQueue() ——初始化队列 EnQueue() ——进队列 DeQueue() ——出队列 IsQueueEmpty()——判断队列是否为空 IsQueueFul
阅读全文
摘要:数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据结构往往同高效的检索算法和索引技术有关。 数据结构具体指同一类数据元素中,各元素之间的相互关系,包括两个组成成分,数据的逻辑结构,数据的
阅读全文
摘要:在C语言中,static的字面意思很容易把我们导入歧途,其实它的作用有三条。 (1)先来介绍它的第一条也是最重要的一条:隐藏。 当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。为理解这句话,我举例来说明。我们要同时编译两个源文件,一个是a.c,另一个是main.c
阅读全文
浙公网安备 33010602011771号