摘要: 请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 阅读全文
posted @ 2019-06-27 09:45 淡如水94 阅读(108) 评论(0) 推荐(0)
摘要: 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 思路一 暴力求解 思路二 利用二维数组由上到下,由左到右递增的规律, 那么选取右上角或者左下角的元素a[r 阅读全文
posted @ 2019-06-27 09:29 淡如水94 阅读(188) 评论(0) 推荐(0)
摘要: 输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。 考点不是排序啊。如果输入的数据大于内存你怎么排序? 最小堆和最小堆的时间复杂度都是n*logn,但是最小堆在k个数之后添加的话需要调整堆,但是最大堆只要每次和顶端的比较就可以啦 阅读全文
posted @ 2019-06-26 11:29 淡如水94 阅读(166) 评论(0) 推荐(0)
摘要: 题目:二叉搜索树与双向链表 要求:输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。 1一开始我连题目都看不懂,只能想到用中序遍历,但是我不知道该怎么去改中序遍历的代码 2看了大牛的代码,发现我对不能创建任何新的结点有误解,其实可以新建 阅读全文
posted @ 2019-06-13 17:53 淡如水94 阅读(144) 评论(0) 推荐(0)
摘要: 题目:数组中出现次数超过一半的数 要求:数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。 思路一: 如果有符合条件的数字,则它出现的次数比 阅读全文
posted @ 2019-06-12 17:16 淡如水94 阅读(261) 评论(0) 推荐(0)
摘要: 题目:字符串的排列 要求:输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。(输入一个字符串,长度不超过9(可能有字符重复),字符只包括大小写字母。) 很典型的一道回溯算法的题 阅读全文
posted @ 2019-05-20 18:56 淡如水94 阅读(294) 评论(0) 推荐(0)
摘要: 题目:复杂链表的复制 要求:输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空) 图片来自于:https://www.cnblogs.co 阅读全文
posted @ 2019-05-19 19:27 淡如水94 阅读(142) 评论(0) 推荐(0)
摘要: 题目:二叉树中和为某一值的路径 要求:输入一颗二叉树的根节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。(注意: 在返回值的list中,数组长度大的数组靠前) 由于这道题自己加了太多的注释,为了方便自己以后看得轻松,下 阅读全文
posted @ 2019-05-18 20:44 淡如水94 阅读(193) 评论(0) 推荐(0)
摘要: 题目:二叉搜索树的后续遍历数列 要求:输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。 左图的正确后序遍历序列5、7、6、9、1 1、10、8 第一:递归求解方法 bug1: 关于20行到底是返回temp+1还 阅读全文
posted @ 2019-05-18 18:44 淡如水94 阅读(621) 评论(0) 推荐(0)
摘要: 题目:从上往下打印二叉树 要求:从上往下打印出二叉树的每个节点,同层节点从左至右打印。 遇到的问题: Queue<TreeNode> Q = new Queue<TreeNode>();语句总是报错,原因是cannot instantiate the type 更改为Queue<TreeNode> 阅读全文
posted @ 2019-05-17 17:10 淡如水94 阅读(719) 评论(0) 推荐(0)