G
N
I
D
A
O
L
上一页 1 ··· 6 7 8 9 10 11 12 13 14 15 下一页
摘要: 1 双亲表示法 data | parent | 存储某个结点的数据信息|存储该结点的双亲所在数组中的下标 #define MAX 50 typedef struct TreeNode{ int data; // 数据域 int parent; // 双亲结点的下标 } TNode; typedef 阅读全文
posted @ 2022-11-10 17:47 漫舞八月(Mount256) 阅读(59) 评论(0) 推荐(0) 编辑
摘要: 1 删除元素 1.1 删除值为 x 的所有结点 1.1.1 不带头结点的单链表 正常写法: void Delete_X (LinkList &L, int x){ LinkNode *p = L; LinkNode *prevNode; // 记录 p 的前驱结点 LinkNode *nextNod 阅读全文
posted @ 2022-11-07 16:37 漫舞八月(Mount256) 阅读(135) 评论(0) 推荐(0) 编辑
摘要: [toc] ## 1 无序数组的排序——快速排序 ### 1.1 升序排序 一趟排序的思路: - 选取区间 A 最左边的元素 x 作为基准值; - 从区间 A 的最右边开始,往左找,碰到第一个比 x 小的元素时停下,把下标记为 j;(**基准数在最左边,必须从最右边开始扫描!**) - 从区间 A 阅读全文
posted @ 2022-10-30 21:19 漫舞八月(Mount256) 阅读(97) 评论(0) 推荐(0) 编辑
摘要: 1 数据结构定义 #define MAX 50 typedef struct{ int data[MAX]; int length; } SqList; 初始化: void InitList (SqList &L){ for (i = 0; i < MAX; i++) L.data[i] = 0; 阅读全文
posted @ 2022-10-29 14:38 漫舞八月(Mount256) 阅读(114) 评论(0) 推荐(0) 编辑
摘要: 吸烟者问题 假设一个系统有三个抽烟者进程和一个供应者进程。每个抽烟者不停地卷烟并抽掉,但是要卷起并抽掉一支烟,抽烟者需要三种材料:烟草、纸和胶水。三个抽烟者中,第一个拥有烟草,第二个拥有纸,第三个拥有胶水。供应者无限地提供三种材料,供应者每次将两种材料放在桌子上,拥有剩下那种材料的卷烟者卷一根烟并抽 阅读全文
posted @ 2022-10-28 23:00 漫舞八月(Mount256) 阅读(397) 评论(0) 推荐(0) 编辑
摘要: 1 链式存储的二叉树 1.1 定义 typedef struct BiTNode{ int data; struct BiTNode *lchild; struct BiTNode *rchild; } *BiTNode, BiTree; 1.2 先序遍历 void PreOrder (BiTree 阅读全文
posted @ 2022-10-27 22:26 漫舞八月(Mount256) 阅读(63) 评论(0) 推荐(0) 编辑
摘要: 编写插入函数和删除函数的思路: 先考虑一般情况; 再考虑在链表头部的操作; 最后考虑在链表尾部的操作。 1 单向链表 1.1 有头结点的单向链表 1.1.1 数据结构定义 typedef struct LinkNode{ int data; LinkNode *next; } *LinkNode, 阅读全文
posted @ 2022-10-27 09:52 漫舞八月(Mount256) 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 1 顺序表实现栈 两种实现方式: 栈顶指针 top 指向栈顶元素 栈顶指针 top 指向栈顶元素的下一位置 1.1 定义 # define NUM 50 // 栈的容量 typedef struct Stack{ int data[NUM]; int top; } Stack; 1.2 初始化 栈顶 阅读全文
posted @ 2022-10-25 17:42 漫舞八月(Mount256) 阅读(105) 评论(0) 推荐(0) 编辑
摘要: 1 顺序表实现队列(循环队列) 实现方式: 队尾指针指向队尾元素 队尾指针指向队尾元素的下一位置(队头指针在队尾指针的下一个位置作为队满标志) 1.1 定义 队尾指针指向队尾元素: # define MAX 50 // 队列的容量 typedef struct Queue{ int data[MAX 阅读全文
posted @ 2022-10-24 23:11 漫舞八月(Mount256) 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 1 数组 设数组元素长度为 L。 1.1 一维数组 数组下标从 0 开始(A[0]--A[n],一共 n+1 个),假设当前下标为A[i]: 第几个 = i + 1 存储地址 = 首地址 + (第几个-1) * L = A[0] 地址 + i * L 数组下标从 1 开始(A[1]--A[n],一共 阅读全文
posted @ 2022-10-20 17:40 漫舞八月(Mount256) 阅读(599) 评论(0) 推荐(0) 编辑
摘要: 读者写者问题万能模板 读者写者问题,其本质就是连续多个同类进程访问同一个临界资源的问题。 第一个进程开始访问临界资源前,需要对资源加上互斥锁,后面的进程再访问时就不用再对资源加互斥锁了,直到最后一个进程访问完后,发现自己是最后一个进程,就解锁互斥锁。这就像一种情况:第一个人进房间时必须顺手开门,后面 阅读全文
posted @ 2022-10-18 23:21 漫舞八月(Mount256) 阅读(1442) 评论(0) 推荐(1) 编辑
摘要: 考研英语不熟悉的词义(List6-List10) List 6(48个) 单词 | 不熟悉的词义 | logical | a.合乎常理的 essential | a.极其重要的,本质的 possess | vt.支配,具备 associate | n.同事 a.副的,准的 assiocation | 阅读全文
posted @ 2022-10-17 17:43 漫舞八月(Mount256) 阅读(114) 评论(0) 推荐(0) 编辑
摘要: 前排提示:本文部分借鉴或搬运了一些优秀博文的内容,仅为个人学习所用,请见谅! [toc] ## 1 用户接口(文件操作) ### 1.1 创建文件(create 系统调用) 过程如下: - 在外存中找到文件所需的空间。 - 根据文件存放路径的信息找到该目录对应的目录文件,在目录中创建该文件对应的目录 阅读全文
posted @ 2022-10-15 23:14 漫舞八月(Mount256) 阅读(702) 评论(0) 推荐(0) 编辑
摘要: 理发师问题万能模板 理发师问题与生产者消费者问题不同,生产者消费者问题是“生产-消费”问题,理发师问题是“服务-被服务”的问题。然而,这两个问题从根本上来说思路是一样的,下面请大家仔细研究这几个模板。 万能模板 1——无等待上限,服务人员可休息 【万能模板 1】店里有 N 名服务人员,没有顾客时服务 阅读全文
posted @ 2022-10-13 16:01 漫舞八月(Mount256) 阅读(1800) 评论(2) 推荐(0) 编辑
摘要: 哲学家问题万能模板 Step 1. 定义互斥锁 信号量 Lock = 1; Step 2. 定义资源数 比如,a 资源有 9 个,b 资源有 8 个,c 资源有 5 个,则: int a = 9; int b = 8; int c = 5; Step 3. 写代码模板 代码思路: 申请资源: 进程先 阅读全文
posted @ 2022-10-12 17:36 漫舞八月(Mount256) 阅读(452) 评论(0) 推荐(0) 编辑
上一页 1 ··· 6 7 8 9 10 11 12 13 14 15 下一页