数据结构
疯狂的小阿咪
学生
展开
-
操作系统:生产者消费者问题
问题描述: 单个生产者,多个消费者,多个缓冲池,利用多线程通过同步互斥原则完成数据的读取。 解决方案: 生产者与消费者之间涉及同步问题,当缓冲池中有数据时,消费者才能去读取数据;当缓冲池有空余位置时,生产者才能去投进数据。同时又有互斥问题,对缓冲区必须互斥的访问。消费者之间涉及互斥,保证对数据的互斥访问。这里使用了信号量 Semaphore 和关键段 SCRITICAL_SECTION 完成原创 2016-06-06 12:16:13 · 9423 阅读 · 0 评论 -
数据结构:二叉树的前序,中序,后序遍历(递归和非递归)
二叉树的使用,在数据结构中是比较常见的。这里列举了二叉树的四种遍历方式:前序,中序,后序遍历(递归和非递归的方式)以及层次遍历的方法,供大家参考。原创 2016-09-17 23:40:18 · 3169 阅读 · 0 评论 -
快速排序(数组和链表)
本文介绍的是数组和单链表的快速排序。 首先介绍一下快速排序: 快速排序的思想是基于分治的。在待排序表L[ 1,2...N ] 中任取一个元素作为基准 pivot ,通过一趟排序将待排序表划分为独立的两个部分 L[ 1,2...K-1 ] 和 L[ K+1...N ], 使得 L[ 1,2...K-1 ] 中所有元素的值都小于 pivot ,L[ K+1...N ] 中的所有元素都大于等于原创 2016-10-02 16:01:39 · 1975 阅读 · 0 评论 -
图基本算法之图的存储
图是一种很常用的数据结构,其算法的难度相比其他数据结构,难度更大一些,本编文章,将对图的一些基本概念和存储做一些讲解。 图是由顶点集(V)和边集(E)组成,记为 G = (V,E) ; 其中,顶点集不能为空,边集可以为空。图分为以下两种: 1. 有向图 若 E 是有向边(弧)的有限集合时,则图 G 为有向图。其中,弧是顶点的有序对。 2. 无向图 若 E 是无向边(边)的有限集合时,则原创 2016-12-24 14:16:59 · 646 阅读 · 0 评论