经典线性结构之线性表、栈和队列数据结构详解和实例分析
在上一篇文章:数据结构、算法分析、算法复杂度、大O符号中有提到数据结构有三种基本结构形式:集合结构、线性结构、树形结构、图状或网状结构,更形象的解析是结点和结点之间的逻辑关系,例如一对一关系为线性结构,而一对多关系为树形结构,有过数据表设计...
在上一篇文章:数据结构、算法分析、算法复杂度、大O符号中有提到数据结构有三种基本结构形式:集合结构、线性结构、树形结构、图状或网状结构,更形象的解析是结点和结点之间的逻辑关系,例如一对一关系为线性结构,而一对多关系为树形结构,有过数据表设计...
程序由数据结构和算法组成,也是程序设计最难的部分,特别是算法设计实现的部分。在面向对象编程语言中可能相对有一些人不甚注意,因为这些语言提供了一些数据结构和算法的实现,但是实现复杂程序依然难以下手。我们需要明白,程序设计就是简单地和数据结构和...
接上一节:预处理指令和C函数库 数据结构和算法是C语言的主要内容,更特别在于C语言的数据结构和算法一般需要自己实现,与OOP语言不同,C标准库中没有提供相关的数据结构。Linux C标准库原为Linux Libc,现在常用的是GLibc,即...
接上一节:位操作之二进制、字节、按位操作和位字段 本节详解讨论C预处理指令和相关的函数库,例如符号常量和条件编译都是预处理指令,C库函数中有不少函数都是使用库函数的方式调用的,使用C库函数需要对C标准库的有个清楚的了解。在一些地方例如Lin...
接上一节:结构体类型(struct)、联合类型(union)和枚举类型(enum)详解 C语言基本上不会被淘汰,因为C是最接近硬件底层和而且同时适合高级语言开发,在嵌入式开发、单片机、系统开发等,即使在多媒体处理方面,C也是被广泛使用。本章...
接上一节:文件输入输出工作原理和实例详解 结构体struct类型是C语言中的一种核心数据类型,也是C语言编程围绕的对象,联合union类型和枚举enum类型和结构体类型有着相似的语法结构,在类型声明上极为相似,形如struct/union/...
接上一节:存储类别、链接、内存管理和类型限定 文件输入输出在所有编程语言都有,文件的输入输出是所有高级数据处理的第一步,而了解文件输入输出的工作原理则更为重要,各种编程语言的I/O操作和C语言的都差不多,只是API不同,而C语言相对系统层面...
接上一节字符串和字符串处理函数实例详解 本节对于C语言编程的理解十分重要,例如对C程序的执行逻辑的理解、对存储类别的选择和使用、malloc内存分配其实只是存储类别中的一种、如何合理设计程序的代码以及各源文件和头文件的结构等等。变量是一种储...
接上一节:数组和指针完整实例详解 字符串在C语言中是常用的数据对象,却又是一个特殊的存在,本身并没有字符串类型,C语言的字符串实质是一个字符数组,它由一个个字符和结尾的空字符’\0’组成,另外字符串又和指针密切相关,字符数组名就是字符串的首...
接上一节:函数和指针 C语言的数组是个重要的内容,本身并不简单,数组和指针结合可以写的特别复杂,例如int array[3]、int [][3]、int *pt[3]和int (*pt)[3]等,数组指针、指针数组这些要轻松使用都不是一个容...