摘要:
https://plantuml.com/zh/ 阅读全文
摘要:
一、java中的面向对象类型 面向对象两个基本概念:类、对象 1. 类: 类是一个模板,抽象一类对象的属性、和方法。类由一些保存值的数据字段和处理这些值的方法组 类的属性通过字段表示,一个类包含如下字段: 2) 类字段(静态变量):类变量为static类型,此类的所有实例(对象)共用类变量的一个拷贝 阅读全文
摘要:
###1. 循环语句 while()循环 do…while()循环 for(init ; test ; increment) for(variable : iterable) 遍历语句 注:float和double类型的变量,不能作为循环语句的下标。否则,会导致死循环。 ###2. 条件语句 If. 阅读全文
摘要:
一、算法理解 所谓贪心算法是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,它所做出的仅是在某种意义上的局部最优解。也就是说在每一步中,选择目前最优的策略,而不考虑全局是不是最优的。 贪心算法的前提: 1、 原问题复杂度过高 2、 求全局最优解的数学模型难以建立 阅读全文
摘要:
一、算法理解 【基本概念】: 动态规划(dynamic programming),就是对原问题分解,分解成子问题,通过解决子问题从而解决原问题。动 态规划应用于 子问题重叠的情况(分而治之方法子问题独立不相交),即 不同子问题具有公共的子问题 。动态规 划通过对子子问题的求解然后保存求解结果,从而无 阅读全文
摘要:
参考:https://blog.csdn.net/qq_38737992/article/details/95635940 一、算法理解 深度优先搜索算法(Depth-First-Search,DFS)是一种用于遍历或搜索树或图的算法。沿着树的深度遍历树的节 点,尽可能深的搜索树的分支。当节点v的所 阅读全文
摘要:
一、算法理解 广度优先搜索算法(Breadth-First-Search,BFS),又称宽度优先搜索。作为最简便的图的搜索算法之一,是很多重要图算法的基本原型,如Dijkstra最短路径算法和Prime最小生成树算法。其核心思想是: 从初始节点开始,应 用产生式规则生成第一层节点,检查目标节点是否在 阅读全文
摘要:
一、算法理解 前缀和概念: 前缀和可以推导出两个变换公式: 两个变换公式: (1)nums[某一项] = 两个相邻前缀和之差:nums[x] = prefixSum[x] - prefixSum[x - 1] (2)从left 到 right的元素和等于 prefixSum[right+1] – p 阅读全文
摘要:
#一、算法理解 差分,是一种和前缀和相对的策略。 如果有一数列 a[1],a[2],.…a[n] 且令 b[i]=a[i]-a[i-1], b[1]=a[1] 那么就有: a[i] = b[1]+b[2]+.…+b[i] = a[1]+a[2]-a[1]+a[3]-a[2]+.…+a[i]-a[i- 阅读全文
摘要:
一、算法理解 并查集:给定一组元素,及其元素之间的关系,把存在直接、间接关系的元素组成一个集合。常用于解决如下类的问题: (1)存在几个集合? (2)最大集合容积? (3)判断A、B是否在一个集合内? 样例场景【朋友圈】:一个班级有56名学生,存在直接好友关系(A、B是好友关系)、间接好友关系(A、 阅读全文