加载中
dfs路径问题

在矩阵中从起始点开始找出某些路径,可以有多个方向选择(例如上下左右),每次选择某一方向往前走,直到碰到禁止条件,那就返回上一选择重新定一个方向。 每次的选择都代表一次递归。 主函数...

2020/08/04 00:57
36
动态规划:LC62.不同路径(二维)

题目描述: 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。...

2020/07/20 14:55
91
动态规划:LC5.最长回文子串(二维)

题目描述: 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 思路: 1.暴力破解: 遍历出所有的回文子串,找出最大的一个返回即可。 两次for循环遍历数组+判断...

2020/07/20 14:38
284
动态规划:LC198.打家劫舍

题目描述: 你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入...

2020/07/13 01:47
84
动态规划:LC121.买卖股票的最佳时机

题目描述: 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。 如果你最多只允许完成一笔交易(即买入和卖出一支股票一次),设计一个算法来计算你所能获取的最大利润。 注意:你...

2020/07/13 01:13
204
动态规划:LC70.爬楼梯

题目描述: 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数。 思路: 还是三部曲: 1.定义数组...

2020/07/12 23:41
63
动态规划:LC53:最大子序和

题目描述: 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。 思路: 最开始我是想用子序列的长度去遍历,但想不出来怎么写出动态规划的...

2020/07/12 23:29
180
二分查找

二分查找: 1.概念: 对于一组有序的数据,每次将目标值与区间中间值进行比较,将待查找的的区间缩小为原来的一半,直到找到目标值或区间缩小为0。 2.时间复杂度:O(logn) 3.与其他查找相比:...

2020/05/30 15:13
2.1K
归并排序、快速排序

快速排序: 核心思想:将一组数据由分区点分为两部分,左边是比它小的,右边是比它大的,然后再从小/大的那组数据中再找出分区点并进行分区,直到排好序。 时间复杂度:O(nlogn),最坏O(n^2...

2020/05/23 13:54
22
冒泡排序、选择排序、插入排序

冒泡排序: 核心思想:每一轮找出最大的元素放在数组的最后面。 public static void BubbleSort(int[] a){ //外层循环,找每一轮的最大数放在末尾 for(int i=0;i<a.length;i++){ //内层循环,...

2020/05/22 20:31
75
计数排序

核心思想: 桶排序的特殊形式,一组数据中最大数为n,那么就设立n个桶,使每一数据都对应一个桶。 桶的下标即为数据大小,而桶内存放的则是该数据出现的次数。 当全部数据统计完后,将桶的次...

2020/05/21 22:56
66

没有更多内容

加载失败,请刷新页面

没有更多内容

返回顶部
顶部
返回顶部
顶部