摘要: 做实验的时候会把日志重定向写到文件中,方便以后查看。但是用vim打开之后出现很多^H和^M,就像乱码一样。如图所示: 现在尝试在vim中解决这个问题。 替换^H 在vim中输入命令,表示把^H替换成空格(注意/ /之间有个空格) 解释: : 表示替换操作 :“%” :表示整个文件。s前面的符号表示检 阅读全文
posted @ 2017-11-22 12:53 木白的菜园 阅读(1140) 评论(0) 推荐(1) 编辑
摘要: ```C++ include include include using namespace std; //最长公共子序列 vector getdp1(string str1, string str2) { vector dp(str1.length(), vector(str2.length()) 阅读全文
posted @ 2017-09-04 14:42 木白的菜园 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 题目 给定两个字符串str1和str2, 长度分别稳M和N,返回两个字符串的最长公共子串 解法一 这是一道经典的动态规划题,可以用M N的二维dp数组求解.dp[i][j]代表以str1[i]和str2[j]当做公共子串结尾的情况下,公共子串能有多长.然后分析可以发现dp[i][j]只与dp[i 1 阅读全文
posted @ 2017-09-04 14:42 木白的菜园 阅读(325) 评论(0) 推荐(0) 编辑
摘要: ```python include include include include using namespace std; //获取最长递增子序列的递增数组 vector getdp1(vector arr) { vector dp(arr.size()); for (int i = 0; i a 阅读全文
posted @ 2017-09-04 14:41 木白的菜园 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 题目三 给定数组arr, arr中所有的值都为整数且不重复.每个值代表一种面值的货币,每种面值的货币可以使用任意张,在给定一个整数aim代表要找的钱数,求换钱有多少种方法. 解法一 暴力递归 用0张arr[0], 让arr[1...N 1]组成剩下的钱,这样的方法数记为res1 用1张arr[0], 阅读全文
posted @ 2017-09-04 13:54 木白的菜园 阅读(506) 评论(0) 推荐(0) 编辑
摘要: 题目一 给定数组arr,数组中有N个元素,其中所有的之都为整数且不重复.每个只代表一种面值的货币,每种面值的货币可以使用任意张,在给定一个整数aim代表要找的钱数,求组成aim的最少货币数. 解法 依然是用二维数组分析的动态规划问题,数组dp长为N行aim 1列.其中dp[i][j]代表用arr[0 阅读全文
posted @ 2017-09-04 13:53 木白的菜园 阅读(451) 评论(0) 推荐(0) 编辑
摘要: 题目 给定一个矩阵m, 从左上角开始每次只能向右或者向下走,最后到达右下角的位置,路径上所有的树子累加起来就是路径和,返回所有的路径中最小的路径和. 解法一 这是一道经典的动态规划题,状态转移方程为dp[i][j] = min{dp[i - 1][j], dp[i][j - 1]} + m[i][j 阅读全文
posted @ 2017-09-04 13:47 木白的菜园 阅读(2490) 评论(0) 推荐(0) 编辑
摘要: 题目 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。 代码: #include <iostream> using namespace std; //这种解法不用对n的位数进行移动 int numberOf1(int n) { int cnt = 0; unsigned int fl 阅读全文
posted @ 2017-03-16 10:39 木白的菜园 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 题目:输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 代码(c/c++): #include <iostrea 阅读全文
posted @ 2017-03-16 10:38 木白的菜园 阅读(1627) 评论(0) 推荐(0) 编辑
摘要: 来自《编程之美》3.3 题目:定义了三种不同的操作把不同的字符串变成相同 1.修改一个字符; 2.增加一个字符; 3.删除一个字符; 为了把两个字符串变得相同,每进行一次上述的某个操作,距离加1,最后定义两个字符串的相似度为“距离+1”的倒数。要求求出任意两个字符串的相似度。 解法: #includ 阅读全文
posted @ 2017-03-16 10:36 木白的菜园 阅读(533) 评论(0) 推荐(0) 编辑