该文章的最新版本已迁移至个人博客【比特飞】,单击链接 https://www.byteflying.com/archives/666 访问。

概述

本系列博文将会向大家介绍本人在钻研《算法导论 第3版》过程中的点点滴滴,并使用C#语言实现该书中所有的经典算法,附带相应的时间复杂度分析。

知识储备

C#算法设计之知识储备

C#算法设计排序篇

C#算法设计排序篇之01-冒泡排序(附带动画演示程序)

C#算法设计排序篇之02-快速排序(附带动画演示程序)

C#算法设计排序篇之03-直接插入排序(附带动画演示程序)

C#算法设计排序篇之04-选择排序(附带动画演示程序)

C#算法设计排序篇之05-归并排序(附带动画演示程序)

C#算法设计排序篇之06-堆排序(附带动画演示程序)

C#算法设计排序篇之07-希尔排序(附带动画演示程序)

C#算法设计排序篇之08-计数排序(附带动画演示程序)

C#算法设计排序篇之09-基数排序(附带动画演示程序)

C#算法设计排序篇之10-桶排序(附带动画演示程序)

C#算法设计排序篇之11-二叉树排序(附带动画演示程序)

C#算法设计查找篇

C#算法设计查找篇之01-顺序查找

C#算法设计查找篇之02-二分查找

C#算法设计查找篇之03-插值查找

C#算法设计查找篇之04-斐波那契查找

C#算法设计查找篇之05-二叉树查找

C#算法设计查找篇之06-分块查找

C#算法设计查找篇之07-哈希查找

C#算法设计树篇

C#算法设计树篇之知识储备

C#算法设计树篇之01-一般的树

C#算法设计树篇之02-树的遍历(深度优先)

C#算法设计树篇之03-树的遍历(广度优先)

C#算法设计树篇之04-二叉树

C#算法设计树篇之05-完全二叉树

C#算法设计树篇之06-平衡二叉树

C#算法设计树篇之07-排序二叉树

C#算法设计树篇之08-哈夫曼树

C#算法设计树篇之09-B树

C#算法设计树篇之10-2-3树

C#算法设计树篇之11-红黑树

AlgorithmMan

AlgorithmMan by Iori,AlgorithmMan是使用C#开发的一套用于算法演示的工具。

各个算法的AlgorithmMan工具均可在相应博文下找到。

C#经典算法实践,回顾往生,更是致敬《算法导论》的更多相关文章

  1. 经典面试题(二)附答案 算法+数据结构+代码 微软Microsoft、谷歌Google、百度、腾讯

    1.正整数序列Q中的每个元素都至少能被正整数a和b中的一个整除,现给定a和b,需要计算出Q中的前几项, 例如,当a=3,b=5,N=6时,序列为3,5,6,9,10,12 (1).设计一个函数void ...

  2. 经典算法研究系列:二、Dijkstra 算法初探

    July   二零一一年一月 本文主要参考:算法导论 第二版.维基百科. 一.Dijkstra 算法的介绍 Dijkstra 算法,又叫迪科斯彻算法(Dijkstra),算法解决的是有向图中单个源点到 ...

  3. 机器学习算法实践:Platt SMO 和遗传算法优化 SVM

    机器学习算法实践:Platt SMO 和遗传算法优化 SVM 之前实现了简单的SMO算法来优化SVM的对偶问题,其中在选取α的时候使用的是两重循环通过完全随机的方式选取,具体的实现参考<机器学习 ...

  4. 算法实践——舞蹈链(Dancing Links)算法求解数独

    在“跳跃的舞者,舞蹈链(Dancing Links)算法——求解精确覆盖问题”一文中介绍了舞蹈链(Dancing Links)算法求解精确覆盖问题. 本文介绍该算法的实际运用,利用舞蹈链(Dancin ...

  5. 4、2支持向量机SVM算法实践

    支持向量机SVM算法实践 利用Python构建一个完整的SVM分类器,包含SVM分类器的训练和利用SVM分类器对未知数据的分类, 一.训练SVM模型 首先构建SVM模型相关的类 class SVM: ...

  6. 机器学习算法实践:朴素贝叶斯 (Naive Bayes)(转载)

    前言 上一篇<机器学习算法实践:决策树 (Decision Tree)>总结了决策树的实现,本文中我将一步步实现一个朴素贝叶斯分类器,并采用SMS垃圾短信语料库中的数据进行模型训练,对垃圾 ...

  7. 转载 - 算法实践——舞蹈链(Dancing Links)算法求解数独

    出处:http://www.cnblogs.com/grenet/p/3163550.html 在“跳跃的舞者,舞蹈链(Dancing Links)算法——求解精确覆盖问题”一文中介绍了舞蹈链(Dan ...

  8. 个性化排序算法实践(五)——DCN算法

    wide&deep在个性化排序算法中是影响力比较大的工作了.wide部分是手动特征交叉(负责memorization),deep部分利用mlp来实现高阶特征交叉(负责generalizatio ...

  9. 【ArchSummit干货分享】个推大数据金融风控算法实践

    作者:个推高级数据工程师 晓骏 众所周知,金融是数据化程度最高的行业之一,也是人工智能和大数据技术重要的应用领域.随着大数据收集.存储.分析和模型技术日益成熟,大数据技术逐渐应用到金融风控的各个环节. ...

  10. LTP 分词算法实践

    参考链接: https://github.com/HIT-SCIR/ltp/blob/master/doc/install.rst http://www.xfyun.cn/index.php/serv ...

随机推荐

  1. linux管理防火墙

    操作系统环境:CentOS Linux release 7.0.1406(Core) 64位CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙步骤. 1.关闭f ...

  2. 【Nginx】面试官问我Nginx能不能配置WebSocket?我给他现场演示了一番!!

    写在前面 当今互联网领域,不管是APP还是H5,不管是微信端还是小程序,只要是一款像样点的产品,为了增加用户的交互感和用户粘度,多多少少都会涉及到聊天功能.而对于Web端与H5来说,实现聊天最简单的就 ...

  3. ANDROID自定义视图——onMeasure,MeasureSpec源码 流程 思路详解

    简介: 在自定义view的时候,其实很简单,只需要知道3步骤: 1.测量--onMeasure():决定View的大小 2.布局--onLayout():决定View在ViewGroup中的位置 3. ...

  4. sed在文本第一行和最后一行添加字符串

    shell在文本第一行和最后一行添加字符串 sed -i '1 i\ApiInterfaceName ResposeTime' /tmp/apiLog/apiLogFromatSecond.logse ...

  5. yum下载软件包

    方法一: downloadonly插件有一个yum的插件叫做downloadonly,就是只下载不安装的意思.1. 安装插件yum install yum-download2. 下载yum updat ...

  6. CentOS6.5安装Oracle11g

    安装前必读: 1.      安装Oracle的虚拟机需要固定IP. 2.      注意安装过程中root用户与oracle用户的切换(su root/su oracle) 3.      环境变量 ...

  7. vue“欺骗”ueditor,实现图片上传

    一.环境介绍 @vue/cli 4.3.1 webpack 4.43.0 ueditor1.4.3.3 jsp版 二.springboot集成ueditor,实现分布式图片上传 参考我的另一篇博客,& ...

  8. Python游戏编程入门 中文pdf扫描版|网盘下载内附地址提取码|

    Python是一种解释型.面向对象.动态数据类型的程序设计语言,在游戏开发领域,Python也得到越来越广泛的应用,并由此受到重视. 本书教授用Python开发精彩游戏所需的[]为重要的该你那.本书不 ...

  9. python基础day4_列表list

    list列表 li = ['alex',[1,2,3],'hjh','nvshen '] l1= li[0] print(l1) # alex l3= li[0:3]#['alex', [1, 2, ...

  10. 2020牛客暑期多校训练营 第二场 J Just Shuffle 置换 群论

    LINK:Just Shuffle 比较怂群论 因为没怎么学过 置换也是刚理解. 这道题是 已知一个置换\(A\)求一个置换P 两个置换的关键为\(P^k=A\) 且k是一个大质数. 做法是李指导教我 ...