![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
晋阳
量变引起质变
展开
-
算法:最小生成树
问题给出一些Connections,即Connections类,找到一些能够将所有城市都连接起来并且花费最小的边。如果说可以将所有城市都连接起来,则返回这个连接方法;不然的话返回一个空列表。注意事项返回cost最小的连接方法,如果cost相同就按照city1进行排序,如果city1也相同那么就按照city2进行排序。辅助类:public class Connec原创 2018-01-13 00:49:48 · 204 阅读 · 0 评论 -
算法:螺旋矩阵 I
问题给定一个包含 m x n 个要素的矩阵,(m 行, n 列),按照螺旋顺序,返回该矩阵中的所有要素。样例给定如下矩阵:[ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ]]应返回 [1,2,3,6,9,8,7,4,5]。思路思路比较普通,就是螺旋遍历。实现private static List原创 2018-01-13 00:52:12 · 479 阅读 · 0 评论 -
算法:螺旋矩阵 II
问题给你一个数n生成一个包含1到n^2的螺旋形矩阵样例矩阵为[ [ 1, 2, 3 ], [ 8, 9, 4 ], [ 7, 6, 5 ]]思路将矩阵转化成一个x轴向右,y轴向下的x0y坐标轴,有助于思考。思路比较简单,就是螺旋遍历。实现public static int[][] generateMatrix(int n)原创 2018-01-13 00:55:48 · 386 阅读 · 0 评论 -
算法:接雨水
问题Given n non-negative integers representing an elevation map where the width of each bar is 1, compute how much water it is able to trap after raining.样例接雨水如上图所示,海拔分别为 [原创 2018-01-13 00:57:13 · 2373 阅读 · 1 评论 -
教你彻底理解动态规划——扔鸡蛋问题 Drop Eggs2
有一个n层的建筑。如果一个鸡蛋从第k层及以上落下,它会碎掉。如果从低于这一层的任意层落下,都不会碎。有m个鸡蛋,用最坏的情况下实验次数最少的方法去找到k, 返回最坏情况下所需的实验次数。样例给出m=2,n=100返回14给出m=2,n=36返回8PO主宅心仁厚的把每一个步骤拆开了揉碎了给你们讲,具体细节我都在每一行的代码之上的注释里写原创 2018-01-06 13:05:17 · 5269 阅读 · 3 评论 -
算法:摆动排序 I & II
摆动排序 I给你一个没有排序的数组,请将原数组就地重新排列满足如下性质nums[0] = nums[2] 允许相邻元素相等思路先对数组进行排序,然后依次把两两相邻的元素进行交换,最终成为一个波动递增的数列,满足题目要求实现public void wiggleSort(int[] nums) { // write your code here原创 2018-01-07 12:24:47 · 584 阅读 · 0 评论 -
算法:寻找丢失的数 I & II
寻找丢失的数 I问题给出一个包含 0 .. N 中 N 个数的序列,找出0 .. N 中没有出现在序列中的那个数样例N = 4 且序列为 [0, 1, 3] 时,缺失的数为2。思路求出缺失数组和完整数组的和,求差值即答案实现public int findMissing(int[] nums) { // write your cod原创 2018-01-06 20:15:39 · 1879 阅读 · 0 评论 -
算法:求最多有k个不同字符的最长子字符串的长度
问题给定一个字符串,找到最多有k个不同字符的最长子字符串,并返回其长度。样例例如,给定 s = "eceba" , k = 3,T 是 "eceb",长度为 4.第一种思路将母问题分为两个子问题:1.如果从从头开始找,求最长k不同子串长度2.如果从第二个字符开始找,求最长k不同子串长度然后不断循环递归实现public static int原创 2018-01-07 20:19:42 · 2873 阅读 · 0 评论