TypechoJoeTheme

初恋云博客

搜索到 9 篇与 默认分类 的结果
2021-06-15

动态规划入门

动态规划入门
动态规划的背景 动态规划(英语:Dynamic programming,简称 DP)是一种在数学、管理科学、计算机科学、经济学和生物信息学中使用的,通过把原问题分解为相对简单的子问题的方式求解复杂问题的方法。 动态规划不是某一种具体的算法,而是一种算法思想:若要解一个给定问题,我们需要解其不同部分(即子问题),再根据子问题的解以得出原问题的解。 应用这种算法思想解决问题的可行性,对子问题与原问题的关系,以及子问题之间的关系这两方面有一些要求,它们分别对应了最优子结构和重复子问题。 最优子结构 最优子结构规定的是子问题与原问题的关系 动态规划要解决的都是一些问题的最优解,即从很多解决问题的方案中找到最优的一个。当我们在求一个问题最优解的时候,如果可以把这个问题分解成多个子问题,然后递归地找到每个子问题的最优解,最后通过一定的数学方法对各个子问题的最优解进行组合得出最终的结果。总结来说就是一个问题的最优解是由它的各个子问题的最优解决定的。 将子问题的解进行组合可以得到原问题的解是动态规划可行性的关键。在解题中一般用状态转移方程描述这种组合。例如原问题的解为 f(n)f(n),其中 f...
adminqt
2021-06-15

默认分类

22 阅读
0 评论
2021年06月15日
22 阅读
0 评论
2021-05-18

音乐播放器用到的代码

音乐播放器用到的代码
/// /// 初始化皮肤 /// private void InitInfo() { this.skinEngine = new SkinEngine(); this.skinEngine.SkinFile = AppDomain.CurrentDomain.BaseDirectory + @"Skins\mp10.ssk"; this.skinEngine.DisableTag = 9999; ReadSkinFile(); } /// <summary> /// 背景图切换 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void BgWorker1_DoWork(object sender, DoWorkEventArgs e) { while (isRunning) { if (...
adminqt
2021-05-18

默认分类

141 阅读
0 评论
2021年05月18日
141 阅读
0 评论
2021-05-15

自用脚本

自用脚本
// ==UserScript== // @name N0ts - 美和易思自动考试答题 // @namespace mail@n0ts.cn // @version 0.1.6 // @description 看文档熬 // @author N0ts,Lu // @match https://www.51moot.net/ // @match http://127.0.0.1:5555/ // @grant none // @require https://cdn.bootcdn.net/ajax/libs/axios/0.21.1/axios.min.js // ==/UserScript== (function () { 'use strict'; createDom(); })(); // 创建隐藏元素 function createDom() { // 文本框 let dom = document.createElement("div"); dom.classList.ad...
adminqt
2021-05-15

默认分类

167 阅读
0 评论
2021年05月15日
167 阅读
0 评论
2021-05-14

初级算法

初级算法
1、删除排序数组中的重复项 给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。 不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。   说明: 为什么返回数值是整数,但输出的答案是数组呢? 请注意,输入数组是以「引用」方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。 你可以想象内部操作如下: // nums 是以“引用”方式传递的。也就是说,不对实参做任何拷贝 int len = removeDuplicates(nums); // 在函数里修改输入数组对于调用者是可见的。 // 根据你的函数返回的长度, 它会打印出数组中 该长度范围内 的所有元素。 for (int i = 0; i < len; i++) {     print(nums[i]); }   示例 1: 输入:nums = [1,1,2] 输出:2, nums = [1,2] 解释:函数应该返回新的长度 2 ,并且原数组 nums 的前两个元素被修改为 1, 2 。不需要考虑数组中超出新...
adminqt
2021-05-14

默认分类

57 阅读
0 评论
2021年05月14日
57 阅读
0 评论