前言 并行编程:通过编码方式利用多核或多处理器称为并行编程,多线程概念的一个子集。 并行处理:把正在执行的大量的任务分割成小块,分配给多个同时运行的线程。多线程的一种。 并行编程分为如下几个结构: 1.并行的LINQ或PLINQ 2.Parallel类 3.任务并行结构 4.并发集合 5.SpinL ...
分类:
其他好文 时间:
2018-09-22 12:54:14
阅读次数:
214
最优化问题 # 背包问题 # 动态规划 # 图 # ...
分类:
其他好文 时间:
2018-09-12 11:14:30
阅读次数:
186
数据结构与算法分析 优先队列 模型 Insert(插入) == Enqueue(入队) DeleteMin(删除最小者) == Dequeue(出队) 基本实现 简单链表:在表头插入,并遍历该链表以删除最小元 时间代价昂贵 二叉查找树 二叉查找树支持许多不需要的操作,实现麻烦,不值得 最合适:二叉堆 ...
分类:
编程语言 时间:
2018-09-08 16:00:13
阅读次数:
200
1、队列概念 队列同样是一种特殊的线性表,其插入和删除的操作分别在表的两端进行,队列的特点就是先进先出(First In First Out)。我们把向队列中插入元素的过程称为入队(Enqueue),删除元素的过程称为出队(Dequeue)并把允许入队的一端称为队尾,允许出的的一端称为队头,没有任何 ...
分类:
编程语言 时间:
2018-09-03 02:27:45
阅读次数:
190
队列(queue) 队列是只允许在一端进行插入操作,在另外一段进行删除操作的线性表 队列不允许在中间部位进行操作 先进先出(First In First Out) enqueue端 添加元素 dequeue端 删除元素 以下是 : 单向队列用 顺序表 实现(链表也可以) Queue() 创建一个空的 ...
分类:
其他好文 时间:
2018-08-29 01:13:56
阅读次数:
142
[TOC] 3.1 栈 3.1.1 栈的基本概念 (1)栈的定义 栈 (Stack):只允许在一端进行插入或删除操作的线性表。首先栈是一种线性表,但是限定这种线性表只能在某一端进行插入和删除操作,如图 3 1 所示。 栈顶 (Top):线性表允许进行插入和删除的那一端。 栈底 (Bottom):固定 ...
分类:
其他好文 时间:
2018-07-30 11:29:34
阅读次数:
289
publicinterface IBiTree<E> { //返回根节点 TreeNode<E> getRoot(); //返回fnode的左子树 TreeNode<E> getLeftChild(TreeNode<E> fnode); //返回fnode的右子树 TreeNode<E> getRi ...
分类:
编程语言 时间:
2018-07-28 13:40:40
阅读次数:
161
栈 栈(stack),有些地方称为堆栈,是一种容器,可存入数据元素、访问元素、删除元素,它的特点在于只能允许在容器的一端(称为栈顶端指标,英语:top)进行加入数据(英语:push)和输出数据(英语:pop)的运算。没有了位置概念,保证任何时候可以访问、删除的元素都是此前最后存入的那个元素,确定了一 ...
分类:
其他好文 时间:
2018-07-26 22:09:23
阅读次数:
179
队列是遵循FIFO(First In First Out,先进先出,也称为先来先服务)原则的一组有序的项 队列在尾部添加新元素,并从顶部移除元素。最新添加的元素必须排在队列的末尾。 ? enqueue(element(s)):向队列尾部添加一个(或多个)新的项。? dequeue():移除队列的第一 ...
分类:
其他好文 时间:
2018-07-19 18:10:56
阅读次数:
190
1.栈的顺序存储结构//*********************************stack_array.h************************************ #ifndef STACK_ARRAY_H #define STACK_ARRAY_H #define MAX... ...
分类:
其他好文 时间:
2018-07-17 23:16:08
阅读次数:
148