- 博客(6)
- 收藏
- 关注
原创 LeetCode494.目标和(DFS递归 & 动态规划)
铁憨憨的我第一次做出来比较难看。。。如下把递归写得毫无美感:/** * 给定一个非负整数数组,a1, a2, ..., an, 和一个目标数,S。现在你有两个符号 + 和 -。对于数组中的任意一个整数,你都可以从 + 或 -中选择一个符号添加在前面。 * * 返回可以使最终数组和为目标数 S 的所有添加符号的方法数。 */public class FindTargetSumWay...
2019-09-19 19:43:36
264
原创 LeetCode.克隆图
深度优先之克隆图原理理解深度优先中有递归,再加上多了个 无向连通图,着实难以理解,整理思路如下。 map<node,node> hashmap = new HashMap<>();//每次进入克隆函数先把要克隆的node放到hashmap中 1.clone node_1: neighbors = node_2 //未在hashmap中,clon...
2019-09-04 18:42:24
120
原创 C#:协变和逆变
看到协变和逆变之后头大了几圈,现在理出点头绪,用浅显的话记录一下,以便后面回顾。赋值兼容性在此之前先了解下“赋值兼容性”,无非就是派生类对象可以赋值给“基类对象”,反之不行。这个概念理解了以后过一段时间可能容易迷糊,其实只要从访问的安全性来理解就不容易忘。派生类是从基类继承而来,又有自己私人的东西,把派生类对象Dog赋值给基类对象Animal,Animal对象能访问到的动物属性在Dog对...
2019-06-11 16:44:37
1700
原创 输出数据到CSV文件
最近由于公司业务需要,写了这个函数,用于将线程中不断得到的数据输出到**CSV**文件中。查阅过一些其他博客,基本都是用文件流FileStream结合写入流StreamWriter来做的,做完需要自己手动关闭句柄(代码注释部分),不过C#的静态类File有封装一些函数,可以用完自己就关闭了,如AppendAllLines、AppendAllText、WriteAllLines、WriteAll...
2019-04-23 10:35:35
3027
原创 引用参数ref、输出参数out
引用参数ref、输出参数out引用参数(ref)输出参数(out)对于 ref 和out 网上一搜一大堆,目前看的基本就是照《C#图解教程》说的。对这个两个概念有些困惑,自己看了《C#图解教程》后豁然开朗。网上看不明白的同学,建议购买这本书或者找PDF资源,看看第5章的5.10、5.11、5.12、5.13,里面讲得很详细,结合图例非常好理解。下面讲一点自己的见解,可能说得有些拗口,但只是记录自...
2019-04-16 19:40:41
274
原创 KMP算法理解
KMP算法理解个人学习记录,如有不足,还请不吝赐教。知识补充网上看过许多讲解,很多都看得很晕,直到看到一个有讲到字符串的前缀、后缀这个概念后才豁然开朗。假设字符串 S = “PPAP”,前缀后缀及相关概念如下:前缀字符串S的前缀,是相对于字符串最后一个字符来说的。除去最后一个字符,包含首字符的所有子串即是字符串S的前缀,这些子串组成的集合即是字符串S的前缀集合。所以 S 的前缀集合...
2019-03-08 11:16:19
568
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人