拓扑排序的原理及其实现 经验

本文将从以下几个方面介绍拓扑排序: 拓扑排序的定义和前置条件 和离散数学中偏序 / 全序概念的联系 典型实现算法 Kahn 算法 基于 DFS 的算法 解的唯一性问题 实际例子 定义和前置条件:

mark_ycj 2016-11-29   31242   0

C语言实现排序代码 代码段

void heapsort(int arr[], unsigned int N) { unsigned int n = N, i = n/2, parent, child; int t; for (;;) { /* Loops until arr is sorted */ if (i > 0) { /* First stage - Sorting the heap */ i--; /* Save

w427 2015-05-30   1001   0
C/C++  

python实现插入排序 代码段

#coding: UTF-8 def arrage(temp_list): num = len(temp_list) for i in range(1,num): for j in range(i): if temp_list[i] >= temp_list[j] and j == (i-1): break elif temp_list[i] <= temp_list[j] and j == 0:

likeo 2015-04-21   682   0
Python  

Java Map 按Key排序和按Value排序 经验

Map排序的方式有很多种,这里记录下自己总结的两种比较常用的方式:按键排序(sort by key), 按值排序(sort by value)。 1、按键排序 jdk内置的java.util包下的TreeMap

jopen 2014-09-12   445448   0
P15

  面试笔试必用-必须掌握的Java排序算法 文档

 Java排序算法 1)分类: 1)插入排序(直接插入排序、希尔排序) 2)交换排序(冒泡排序、快速排序) 3)选择排序(直接选择排序、堆排序) 4)归并排序 5)分配排序(箱排序、基数排序) 所需辅助空间最多:归并排序

xiaxia_00 2011-12-27   8138   0

JS 实现 使用堆实现Top K 算法 代码段

1. 使用堆算法实现Top,时间复杂度为 O(LogN) function top(arr,comp){ if(arr.length == 0){return ;} var i = arr.length

jopen 2015-11-14   7678   0
算法  
P321

  数据结构各种算法实现(CPP实现) 文档

cpp 246 18、排序 249 Data.h 249 QueueNode.h 255 LinkQueue.h 259 Sort.h 263 test.cpp 278 数据结构算法实现 2008-9-3

haidi 2012-06-06   480   0

Java递归算法 代码段

递归算法 其实就是程序的自身调用。在做递归算法的时候,必须要有一个明确的递归结束条件, 当满足了这个条件的时候就不再递归了。 下面用Java实现两个基础的递归算法 /** * 求1+2+3+

jopen 2015-12-16   3168   0
Java  

关于日期的常用算法(Java) 经验

关于日期的常用算法有很多,但如果掌握了基本的算法,难一点的可以分解为简单的,各个击破。 1)判断一年是否为闰年: //判断一年是否为闰年 static boolean IsLeapYear(int

jopen 2013-10-01   19491   0
Java   算法  

java学习深度优先算法 代码段

[Java]代码 package cn.xuhang.collection; import java.util.ArrayList; import java.util.List; /** * 从一个点到达另一个点的路径

cyjjkz1 2016-01-28   10035   0
算法   Java  

汉落塔算法实现代码 代码段

到 nFirst 是源柱子号Second Third 是两根过渡柱Fourth 是目标柱 汉落塔算法 #include //---------------------------

g6d7 2015-01-03   1695   0
算法  

php实现二分查找算法 代码段

// $low and $high have to be integers function BinarySearch( $array, $key, $low, $high ) { if( $low > $high ) // termination case { return -1; } $middle = intval( ( $low+$high )/2 ); // gets the middl

y3c5 2015-05-11   895   0
PHP  
P9

  各种算法的C#实现系列 文档

各种算法的C#实现系列2 - 合并排序的原理及代码分析     合并排序算法是用分治策略实现对n个元素进行排序算法。 其基本思想是:将待排序元素分成大小大致相同的两个子集合,分别对两个子集合进行排

xabc2011 2011-11-10   500   0

k-medoids聚类算法实现 经验

cn/archives/1398.html k-medoids聚类算法,即k-中心聚类算法,它是基于k-means聚类算法的改进。我们知道,k-means算法执行过程,首先需要随机选择初始质心,只有第一次随机选择

nyyb 2015-12-13   19789   0
算法  

C数据结构 - KMP算法实现 代码段

// KMP字符串模式匹配算法 // 输入: S是主串,T是模式串,pos是S中的起始位置 // 输出: 如果匹配成功返回起始位置,否则返回-1 int KMP(PString S, PString T

jopen 2015-07-02   1329   0
C/C++  

深度优先搜索的实现算法 经验

深度优先搜索算法所遵循的搜索策略是尽可能“深”地搜索一个图。它的基本思想就是:首先访问图中某一起始顶点v,然后由v出发,访问与v邻接且未被 访问的任一顶点w1,再访问与w1邻接且未被访问的任一顶点w2

jopen 2014-07-05   16899   0
算法  

粒子群算法python实现 经验

1、 概述 粒子群算法作为一种优化算法,在很多领域都有应用。所谓优化,我的理解是对一个问题求出它足够好的解,目前的优化算法有很多,如蚁群算法、遗传算法等。粒子群算法相对于这些算法来说,它更简单,而且有很快的收敛速度。

jopen 2012-09-06   24594   0
算法  

数据结构与算法的C#实现 经验

数据结构与算法的C#实现

jopen 2015-07-29   31077   0
C#   .NET开发  

python实现的Caesar加解密算法 代码段

Caesar算法是最简单的加解密算法... # Caeser Cipher import sys,os MyCypher = 25 MyDict = 'ABCDEFGHIJKLMNOPQRSTUVWX

me87re 2015-05-04   1819   0
Python   算法  

A*(A星)算法Go lang实现 代码段

package main import ( "container/heap" "fmt" "math" "strings" ) import "strconv" type OpenList []*_AstarPoint func (self OpenList) Len() int { return len(self) } func (self OpenList) Less(i, j int) bo

gww3 2015-05-13   1099   0
算法  
1 2 3 4 5 6 7 8 9 10