随笔分类 - C语言
C语言——二叉排序树
摘要:二叉排序树是一种实现动态查找的树表,又称二叉查找树。 二叉排序树的性质: 1. 若它的左子树不为空,则左子树上所有节点的键值均小于它的根节点键值 2. 若它的右子树不为空,则右子树上所有节点的键值均大于它的根节点键值 3. 根的左右子树也分别为二叉排序树 二叉排序树插入节点
阅读全文
C语言——无向带权图邻接矩阵的建立
摘要:#include #include "Graph.h" #define MAX_INT 32767 /* #define vnum 20 #define MAX_INT = 32767 // 邻接矩阵 typedef struct gp { int vexs[vnum]; // 顶点信息 int arcs[vnum][vnum]; // 邻接矩阵 int vexnu...
阅读全文
C语言——栈的基本运算在顺序栈上的实现
摘要:头文件 Seqstack.h main.c
阅读全文
C语言——单链表初始化、求表长、读表元素、插入元素
摘要:头文件Linear.h 因为单链表头结点和插入的结点要动态生成,所以要引入系统头文件<stdlib.h>或者<malloc.h>,不然会报错。 1. 初始化单链表 2. 求单链表的长度:出了头结点的所有结点的个数,包括首结点 3.读表元素 在单链表head中查找第i个元素结点。若找到,返回指向该节点
阅读全文
C语言——顺序表插入、删除、定位运算算法
摘要:说明:将元素x插入到顺序表L的第i个数据元素之前,这个i是从1开始的,但是程序中数组都是从0算起的,不要混淆了。 头文件: header.h 主体文件: main.c 顺序表插入 删除线性表中第i个数据结点 在顺序表中查找值为x的结点
阅读全文
数据结构与算法C语言所有头文件汇总 —— 持续更新
摘要:header.h Linear.h Seqstack.h Lkstack.h SeqQue.h #define maxsize 20//const int maxsize = 20; typedef struct seqque{ int data[maxsize]; int front, rear;
阅读全文
C语言实现整数数组的逆置算法
摘要:读入100个整数到一个数组中,写出实现该数组进行逆置的算法。 方法一: 假设100个整数读入到数组a中,算法f1的思想是分别从数组两端依次将对应数进行交换,即a[i]与a[100 - i - 1]进行交换,i = 0~49。f1所需要的辅助变量为2个整型变量i和temp,与问题的规模无关,其空间复杂
阅读全文
C语言归并排序
摘要:这篇文章是学习了小甲鱼-数据结构与算法结合自考教材编写出的代码,希望自己逐渐在算法造诣上能更上一层楼。 归并排序(递归实现) “归并”一词在中文含义中就是合并的意思,而在数据结构中的定义是将两个或者两个以上的有序表组合成一个新的有序表,就叫归并。 归并排序(Merge Sort)就是利用归并的思想实
阅读全文
三重for循环实现对二维数组的按列排序(JavaScript)
摘要:由C语言联想到的:三重for循环实现对二维数组的按列排序,并且牵扯到数据结构。 自己写的,水平有限,本文属于原创,可能存在错误,忘指正~ 运行结果: 内部循环的原理是利用选择法: 1. 首先顺序执行for循环,执行到最里面的那个循环之后,一直循环最里面的那个循环,然后跳入从内到外的倒数第二个循环中,
阅读全文
Windows下配置lua环境
摘要:Lua 是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。 1. 下载SciTE编辑器 2. 进入Lua官网:http://www.lua.org/ 点击getting started然后下载需要的版本 3. 配置
阅读全文
C/C++基本数据类型所占字节数
摘要:1字节=8位 1k=1024字节=2^10 1m=1024k 1g=1024m 买硬盘实际内存小是因为厂商当1000换算的 这个基本的问题,很早以前就很清楚了,C标准中并没有具体给出规定那个基本类型应该是多少字节数,而且这个也与机器、OS、编译器有关,比如同样是在32bits的操作系统系,VC++的
阅读全文
数据结构线性存储之连续存储数组的实现
摘要:归纳: 线性 连续存储【数组】 优点:存取速度快(元素可以直接定位到) 缺点:插入删除元素慢(因为要移动其他元素),空间通常有限制 离散存储【链表】 优点:空间没有限制,插入删除元素很快 缺点:存取速度很慢(要一个一个遍历,一个一个找) 线性结构的应用: 1. 栈 2. 队列 非线性 树 图
阅读全文
数据结构与算法之递归
摘要:递归: 定义:一个函数自己直接或间接调用自己 (不要写成死递归) 举例: 1. 1+2+3+4+...+100的和 函数的调用(以C语言为例) 当一个函数的运行期间调用另一个函数时,在运行被调用函数之前,系统需要完成三件事: 从被调函数返回主调函数之前,系统也要完成三件事: 当有多个函数相互调用时,
阅读全文
c语言进制转化
摘要:#include // 进制转化 int main(void) { int i1 = 12; int i2 = 88; int i3 = 0x32C; printf("八进制输出i1 = %o\n", i1); // 14 printf("十六进制输出i2 = %x\n", i2); // 58 printf("十六进制输出i3 = %x\...
阅读全文
线性结构的应用一:栈
摘要:栈原理: 初始化原理: 压栈原理: 遍历链栈: 出栈原理: 实现程序:
阅读全文
采用C/C++语言如何实现复数抽象数据类型Complex
摘要:记录一下! 采用C/C++语言如何实现复数抽象数据类型Complex
阅读全文
浙公网安备 33010602011771号