随笔分类 -  算法

一些数据算法的演示与记录
摘要:前提是版本号都是Vxx.xx.xx.xx....的格式,xx代表数字,不能有除V以外其他字母 记录两种比较方法,一种是vs自带的Version类,一种是自己写的,根据比较结果,使用冒泡排序进行排序。 先给出一堆乱序的版本号: List<string> verList; private void In 阅读全文
posted @ 2023-07-26 16:55 [春风十里] 阅读(142) 评论(0) 推荐(0) 编辑
摘要:前面提到过迪杰斯特拉算法,它的原理简述如下: 1.将所有的点放在B集合。(起点距离为0,其他点为无穷大) 2.从B集合找出距离最小的点,取走并放在A集合。 3.根据A集合的新加入的点,对B集合中的邻点进行距离更新。然后转到2。 4.直至终点加入到A集合表示找到,或B集合无最小值全部为无穷大,表示无法 阅读全文
posted @ 2022-12-23 14:21 [春风十里] 阅读(807) 评论(1) 推荐(0) 编辑
摘要:给定一组数据,使用不同的算法对其进行递增排序: int[] rawList = { 12, 33, 21, 2, 43, 5, 67, 8, 96, 4, 22, 36, 23, 42, 90 }; 选择排序:找到最大的数值,交换在最后一位,再找剩下的最大数值,交换在倒数第二位,再找剩下最大的数值, 阅读全文
posted @ 2022-12-20 18:40 [春风十里] 阅读(23) 评论(0) 推荐(0) 编辑
摘要:计算器如图所示,仅实现加减乘除及括号功能,公式错误时会有提示。 首先建立一个inputList,每次点击将内容添加至inputList中,点击后退时则删除List中最后一个元素。 每次操作后将inputList组合成串显示在输入框中; List<string> input = new List<st 阅读全文
posted @ 2022-11-30 21:38 [春风十里] 阅读(422) 评论(0) 推荐(0) 编辑
摘要:1.Dijkstra算法用于寻找单源最短路径(即起点到任一终点); 2.Dijkstra算法不支持存在权重为负数的边的查找; 3.特殊的图比如每条边的权重一样时,则Dijkstra算法等同于BFS广度优先算法; 4.若找到终点路径后不停止,直至集合U为空,则可以获取起点到其他所有点的最短路径; 算法 阅读全文
posted @ 2022-11-14 17:42 [春风十里] 阅读(522) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示