![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构和算法
文章平均质量分 58
chokshen
技术改变人生!
展开
-
0-1背包和完全背包问题
一、0-1背包 有一个容量为 N 的背包,要用这个背包装下物品的价值最大,这些物品有两个属性:体积 w 和价值 v。 定义一个二维数组 dp 存储最大价值,其中 dp[i][j] 表示前 i 件物品体积不超过 j 的情况下能达到的最大价值,每件物品只能被添加一次。设第 i 件物品体积为 w,价值为 v,根据第 i 件物品是否添加到背包中,可以分两种情况讨论: 第 i 件物品没添加到背包,总体积不超过 j 的前 i 件物品的最大价值就是总体积不超过 j 的前 i-1 件物品的最大价值,dp[i][j]原创 2021-03-03 13:15:46 · 309 阅读 · 0 评论 -
大数加减乘除算法(java版)
加法 import java.lang.StringBuilder; class Solution { public String addStrings(String num1, String num2) { int carry = 0; StringBuilder str = new StringBuilder(""); int i = num1.length() - 1, j = num2.length() - 1; while原创 2021-02-21 22:54:59 · 331 阅读 · 1 评论 -
排序算法总结
这段时间学习了排序算法,然后根据自己的思路敲了一遍代码,排序算法大概分为两种:基本排序算法,比如说冒泡排序,简单选择排序,插入排序;优化的排序算法,比如说希尔排序,堆排序,归并排序和快速排序等。 以下是算法实现需要的头文件和公用函数(数组都是从0开始): #include #include "stdlib.h" void swap (int a[],int i,int j) { in原创 2017-04-02 11:47:25 · 249 阅读 · 0 评论 -
Swift多数组组合算法
需求背景: 在购物的过程中,挑选商品时,通常都要选择某个商品的规格,例如买衣服,需要从颜色、尺寸当中分别选中对应的规格才能确定买哪件衣服,这就需要用到多数组组合算法。 var combinationArray = [[String]]() override func viewDidLoad() { super.viewDidLoad() let...原创 2019-06-06 14:44:43 · 687 阅读 · 0 评论