一、递归程序的定义 程序调用自身的编程技巧叫做递归 递归程序的组成部分 1.语义信息 2.边界条件 3.针对于问题的处理过程和递归过程 (推导出一个递推式子) 4.结果返回 注意:函数的结果返回有两种方式,分别为1.return返回;2.传出参数返回(通过指针变量去实现) 例子:编写一个n的阶乘的程 ...
分类:
编程语言 时间:
2020-11-08 17:11:26
阅读次数:
21
最近看了一下郑老师发的《单元测之道》这本书,读了之后我对CRRRECT边界条件,还有使用Mock对象,都有了初步的了解对单元测试有了很深刻的认识。这本书从什么是单元测试,为什么要使用单元测试这样的问题人手,以讨论的形式作了很好的介绍。作者也举了很多例子,告诉我们单元测试的重要性,单元测试它是服务于人 ...
分类:
其他好文 时间:
2020-11-01 20:55:38
阅读次数:
12
动态规划:时间复杂度是O(N^2) Manacher算法,时间复杂度是O(N) 这篇文章主要是想讲怎么样能正确的填二维动态规划的二维表 动态规划比较简单: 用一个二维数组,dp[ i ][ j ] 表示 下标 i ~ j 字符串是否是回文的,false or true 边界条件是 i - j = 0 ...
分类:
其他好文 时间:
2020-09-15 21:10:06
阅读次数:
24
题目 剑指 Offer 11. 旋转数组的最小数字 我的思路 显然用二分查找,时间复杂度logn,最坏情况可能达到n。 要注意二分查找的边界条件判断,以及如果无法判断此次二分是取左或者去右时,可以尝试把上边界下标减1,再重新二分(安全地缩小边界)。 我的实现 class Solution { pub ...
分类:
编程语言 时间:
2020-07-22 16:15:20
阅读次数:
68
二叉树的遍历 题型 此类题做法 1.定义节点 2.构造二叉树{ a.边界条件 b.建立新节点root 存入根节点数据(由后序或先序 c. k 遍历中序,找到相等的值 d. 得出左子树个数(中序的 ) e.返回左子树根节点地址,返回右子树根节点地址,return root; 3.层次遍历{ a.创建队 ...
分类:
其他好文 时间:
2020-07-21 14:18:40
阅读次数:
61
题目链接 https://leetcode-cn.com/problems/reverse-linked-list/description/ 题目分析 要求:反转一个单向链表 代码模板里的ListNode给了3个构造函数,明显是方便我们构造结点用的(如果要new,最好要delete) 可以迭代实现, ...
分类:
其他好文 时间:
2020-07-11 17:17:33
阅读次数:
55
#include<map> #include<queue> #include<time.h> #include<limits.h> #include<cmath> #include<ostream> #include<iterator> #include<set> #include<stack> # ...
分类:
其他好文 时间:
2020-07-03 15:38:44
阅读次数:
52
递归Recursion 函数直接或者间接调用自身就是递归; 递归需要有边界条件,递归前进段、递归返回段; 递归一定要有边界条件; 当边界条件不满足的时候,递归前进; 当边界条件满足的时候,递归返回; 斐波那契数列示例: 递归要求: 递归一定要有退出条件,递归调用一定要执行到这个退出条件;没有退出条件 ...
分类:
编程语言 时间:
2020-06-30 14:29:37
阅读次数:
57
什么才算是“好的”测试用例? “好的”测试用例一定是一个完备的集合,它能够覆盖所有等价类以及各种边界值,而跟能否发现缺陷无关。 如果把被测试软件看作一个池塘,软件缺陷是池塘中的鱼,建立测试用例集的过程就像是在编织一张捕渔网。“好的”测试用例集就是一张能够覆盖整个池塘的大渔网,只要池塘里有鱼,这个大渔 ...
分类:
其他好文 时间:
2020-06-30 00:49:49
阅读次数:
66
柱状图中最大的矩形 给定 n 个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1 。 求在该柱状图中,能够勾勒出来的矩形的最大面积。 以上是柱状图的示例,其中每个柱子的宽度为 1,给定的高度为 [2,1,5,6,2,3]。 图中阴影部分为所能勾勒出的最大矩形面积,其面积为 1 ...
分类:
编程语言 时间:
2020-06-29 09:37:29
阅读次数:
57