
算法
乐兮山南水北
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
动态规划之背包问题
动态规划之背包问题 问题描述: 给定一个容量为N的背包,给定m件物品,每件物品价值为w[i]、重量为c[i],求如何选择物体可以使物体的费用不超过背包的总容量,且背包能够带走的最大的价值。 1. 如果限定每件物品只有一件,则为0-1背包问题; 2. 如果每件物品的数量不受限制,则为完全背包问题; 3. 如果限定每件物品的数量为n[i]件,则为多重背包问题; 4. 将1、2和3的情况...原创 2018-08-08 07:27:04 · 238 阅读 · 0 评论 -
动态规划问题分析
本博客讨论的问题主要参考AlgoExpert中dynamic programming的question list,求解方法参考Geeksforgeeks网站,代码位于我的GitHub。 - max subset sum no adjacent - number of ways to make change - edit/levenshtein distance - ugly number ...原创 2018-08-29 08:01:12 · 574 阅读 · 0 评论 -
排序算法整理
本文讨论的所有排序算法默认进行升序排列 冒泡排序 算法思想:相邻元素两两比较,如果是升序排列,不变;如果不是,交换两个元素。多次局部有序的操作达到整体有序 时间复杂度:O(n2)O(n2)O(n^{2}),共需要比较n(n−1)2n(n−1)2\frac{n(n-1)}{2}次 代码:GitHub 选择排序 算法思想:遍历数组,每次选择出未排序部分最小的数值,将其置于恰当位置,最终实现...原创 2018-09-16 20:14:57 · 230 阅读 · 0 评论 -
数组和字符串问题分析
给定一个经过排序的数组arr,在其中寻找一个子数组,使得子数组由连续的整数构成。这段代码可以用于在数据中寻找连续的上升边沿。代码: max_length = 0 max_sets = None data_f = arr[0] length_c = 1 sets_c = [arr[0]] for data in arr[1:]: ...原创 2018-09-12 20:36:01 · 211 阅读 · 0 评论