算法
Cod_fish
这个作者很懒,什么都没留下…
展开
-
三(四)数之和问题 排序+双指针解法(c#)
前言力扣上的一系列类似的题目基本的要求就是找到一个最符合要求的三个数之和(最接近的三数之和),或者一堆符合要求的数组(三数,四数之和),基本免不了遍历整个数组三数之和解决思路就和标题中的一样:排序+双指针,在一个普通遍历里面插入一轮双指针,这个解法比暴力法的时间复杂度会降一个次幂,虽然感觉并没有很大优化,但还是比没有好????。题解????废话不多说,直接上代码(代码参考力扣大佬题解)三数之和这里加了排序的方法,后面两个就不写了public class Solution {原创 2020-08-31 09:12:28 · 436 阅读 · 0 评论 -
最短路径(算法第四版)(C#)
最短路径最短路径的性质路径是有向的不需要所有边都可达负权重会使问题变得更复杂最短路径不是唯一的这里讨论的是单点最短路径,即找出从一个起点到所有可达顶点的最短路径构成的最短路径树。有向加权图的数据结构有向边的结构比无向边简单,有确定的起点和终点有向边的结构:public class DirectEdge { private int v; //起点 ...原创 2020-04-28 09:03:11 · 1097 阅读 · 0 评论 -
最小生成树(C#)(算法第四版)
最小生成树 - 加权无向图约定这里只简单的介绍一般情况下的最小生成树问题,因此最加权图数据做了一些规定:只考虑连通图(如果不满足会产生最小森林)所有边的权重不同(不满足会出现多个最小生成树)加权图数据结构using System;using System.Collections.Generic;using System.Text;namespace 图{ publ...原创 2020-04-08 21:58:30 · 548 阅读 · 0 评论 -
初级排序算法 算法(第四版) (C#)
选择排序实现:首先在数组中找到最小的元素,将其与第一个交换,然后依次在剩下的元素中找到最小的,直到数组有序特点:排序时间与输入无关:每次都需要扫描一遍数组来获取最小值。即使输入数组有序,也需要消耗与无序数组相同的时间数据的移动最少:只需要移动n次数据public static void Sort(IComparable[] items) { ...原创 2020-01-18 16:25:09 · 122 阅读 · 0 评论