摘要: 1. 考虑各种情况 (是一种情况多的题) 考虑全局变量来标志异常 注意不能直接判断 double 类型的数据==0; 是有精度的!!!应该用equal 自己写或者调用c库的,但是C库好像有的时候不能用 阅读全文
posted @ 2019-08-19 17:58 高颖1995 阅读(184) 评论(0) 推荐(0) 编辑
摘要: // 面试题:剪绳子// 题目:给你一根长度为n绳子,请把绳子剪成m段(m、n都是整数,n>1并且m≥1)。// 每段的绳子的长度记为k[0]、k[1]、……、k[m]。k[0]*k[1]*…*k[m]可能的最大乘// 积是多少?例如当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此// 阅读全文
posted @ 2019-08-19 15:26 高颖1995 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。 1.右移肯定是不行 因为若是有符号数中的复数,那么则进入死循环 2.左移flag 让n保持不动; 可能有疑惑:while(flag)不是一个死循环了吗?? 毕竟flag左移一直是大于0; 看调试结果: 证明了循环的次数等于 整数二进制 阅读全文
posted @ 2019-08-19 12:17 高颖1995 阅读(333) 评论(0) 推荐(0) 编辑
摘要: 1. 和前面矩阵路径一样,即是使用递归,探索性前进,遍历各种情况 前面那个主函数里有循环是因为它可以从一个矩阵中的任意位置进入!! 我们这个题是只能从起始点(0,0)进入,用不到循环,但是访问过的节点也不能继续访问了!!(0,0)也满足要求,所以最差也是count=1; 注意:这个是行和列坐标不大于 阅读全文
posted @ 2019-08-19 11:14 高颖1995 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 1回溯法 阅读全文
posted @ 2019-08-18 18:17 高颖1995 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 1:采用二分法解答这个问题, mid = low + (high - low)/2 需要考虑三种情况: 1.array[low]>array[high] : 用两个指针来操作: 相当于二分法 低位指针在第一个递增序列内;高位指针在第二个递增序列内; (1)array[low]<array[mid] 阅读全文
posted @ 2019-08-18 12:08 高颖1995 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 1. 讲解: 阅读全文
posted @ 2019-08-17 19:20 高颖1995 阅读(88) 评论(0) 推荐(0) 编辑
摘要: 给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。 注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。 1.分两种情况考虑 (1) 有右子树的情况: 那么它下一个节点就是它的右子树的最左子树 先右转 然后左转一直走!! (2) 无右子树的情况: (1)如果节点是其父 阅读全文
posted @ 2019-08-17 18:01 高颖1995 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 1.QVector 代码-迭代器 {牛客网编不过 QT可以过} 2.只用QVector {QT编不过 牛客可以过} 3.李佳伟 阅读全文
posted @ 2019-08-17 16:37 高颖1995 阅读(134) 评论(0) 推荐(0) 编辑
摘要: 1.递归法实现 (输入前序和中序遍历的结果) 大神法递归(本来用java写的,我修改后结果对)(把结构体对象有的变成指针) 2.递归方式(课本的方式) 阅读全文
posted @ 2019-08-17 10:42 高颖1995 阅读(156) 评论(0) 推荐(0) 编辑