02 2020 档案
摘要:题目描述 给定一棵二叉搜索树,请找出其中的第k小的结点。例如, (5,3,7,2,4,6,8) 中,按结点数值大小顺序第三小结点的值为4。 思路 二叉搜索树的中序遍历是一个递增数列。因此在中序遍历的过程中计数即可找到第k小的节点。 代码 # -*- coding:utf-8 -*- # class
阅读全文
摘要:题目描述 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。 题目描述 从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。 思路(1 自己完成的哦😯 层次遍历,遍历的时候将层数加在队列里。
阅读全文
摘要:题目描述 请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。 思路(参考 1.只要pRoot.left和pRoot.right是否对称即可 2.左右节点的值相等且对称子树(left.left, right.right );(left.rig
阅读全文
摘要:题目描述 给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。 思路 首先知道中序遍历的规则是:左根右,然后作图 1.若当前节点有右子树,下一节点为右子树的最左节点2.若无右节点,则下一节点为第一个为其父节点左孩子的父
阅读全文
摘要:题目描述 给你一根长度为n的绳子,请把绳子剪成整数长的m段(m、n都是整数,n>1并且m>1),每段绳子的长度记为k[0],k[1],...,k[m]。请问k[0]xk[1]x...xk[m]可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是
阅读全文
摘要:python不允许程序员选择采用传值还是传引用。Python参数传递采用的肯定是“传对象引用”的方式。这种方式相当于传值和传引用的一种综合。如果函数收到的是一个可变对象(比如字典或者列表)的引用,就能修改对象的原始值--相当于通过“传引用”来传递对象。如果函数收到的是一个不可变对象(比如数字、字符或
阅读全文
摘要:矩阵中的路径题目描述 请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子。如果一条路径经过了矩阵中的某一个格子,则该路径不能再进入该格子。 例如 a b c e s f c s a d
阅读全文
摘要:题目描述 在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5 思路 链表为排序链表,则可以设置两个指针前后同时移动,同时判断后指针的下一节点是否和它相同。 若相同则循环删除,最后
阅读全文
摘要:题目描述 给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null。 思路(参考) 1.首先确定链表中是否存在环 方法: 设置快慢指针,快指针每次走两步,慢指针走一步。链表中无环则最终快指针为None,若有环快指针和慢指针一定相交。 证明: 设置快慢指针fast和low,fast每次
阅读全文
摘要:一、向列表中增加元素 list.append(单个元素):在list列表末端增加一个元素; list.extend([元素1,元素2]):在list列表末端增加多个元素; list.insert(元素序号,元素):在list列表任意位置增加一个元素 二、从列表中删除元素 list.remove(元素
阅读全文
摘要:题目描述 给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值。例如,如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的大小3,那么一共存在6个滑动窗口,他们的最大值分别为{4,4,6,6,6,5}; 针对数组{2,3,4,2,6,2,5,1}的滑动窗口有以下6个: {[2,3,4]
阅读全文
摘要:题目描述 如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。我们使用Insert()方法读取数据流,使用GetMedian()方法获取当前读取数据的中位数。 代码:
阅读全文
摘要:题目描述 请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是"g"。当从该字符流中读出前六个字符“google"时,第一个只出现一次的字符是"l"。 输出描述: 如果当前字符流没有存在出现一次的字符,返回#字符。代码:看到题目
阅读全文
摘要:题目描述 请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。 自己实现 class Solution:
阅读全文

浙公网安备 33010602011771号