导航

随笔分类 -  算法

学习算法
常用算法集合
该文被密码保护。

posted @ 2014-10-30 17:17 水中游

优先队列
摘要:许多应用程序都需要处理有序的元素,但不一定要求全部有序。一个合适的数据结构应该支持两种操作:删除最大元素和插入元素。 1 #include 2 #include 3 using namespace std; 4 5 6 struct node 7 { 8 int priority; ... 阅读全文

posted @ 2014-08-13 22:36 水中游 阅读(154) 评论(0) 推荐(0)

无向图
摘要:Agraphis a set ofverticesand a collection ofedgesthat each connect a pair of vertices. We use the names 0 through V-1 for the vertices in a V-vertex g... 阅读全文

posted @ 2014-05-25 22:13 水中游 阅读(215) 评论(0) 推荐(0)

排序-快速排序
摘要:快速排序是一种分治的排序。快速排序与归并排序是互补的: 归并排序将数组分成两个子数组分别排序,并将有序的子数组归并以将整个数组排序;而快速排序将数组首先切分成两个子串,然后分别排序。相关的代码:public static void QuickSort(char[] a, int lo, int hi... 阅读全文

posted @ 2014-05-06 22:51 水中游 阅读(158) 评论(0) 推荐(0)

排序-归并排序
摘要:该算法基于一个简单的操作: 将两个有序的队列合成一个更大的有序队列。归并排序保证NlogN。原地归并的抽象算法(Abstract in-place merge):using System;namespace MergeSort{ class Program { static... 阅读全文

posted @ 2014-05-05 22:54 水中游 阅读(187) 评论(0) 推荐(0)

排序-初级排序
摘要:http://algs4.cs.princeton.edu/21elementary/排序算法分析:比较(Compare),交换(Exchange),如果没有使用选择排序:首先,找到最小的元素然后和第一个数做交换,然后在剩下的元素里找最小的,和第二个数做交换,一直下去。选择排序用了: ~N2/2 次... 阅读全文

posted @ 2014-05-04 00:07 水中游 阅读(186) 评论(0) 推荐(0)

算法-常用算法
摘要: 阅读全文

posted @ 2014-05-03 23:09 水中游 阅读(102) 评论(0) 推荐(0)