07 2021 档案
摘要:分类:树-树的前序遍历 题目描述: 给定一个 N 叉树,返回其节点值的 前序遍历 。 N 叉树 在输入中按层序遍历进行序列化表示,每组子节点由空值 null 分隔(请参见示例)。 进阶: 递归法很简单,你可以使用迭代法完成此题吗? 解题思路:用栈来存储,栈的性质是先入后出,所以子树按照逆序压入栈中。
阅读全文
摘要:函数格式为:apply(func,*args,**kwargs) 函数主要用于对DataFrame中的某一column或row中的元素执行相同的函数操作。 对某一列(column)进行操作 # 对C1列中的每一个元素加1 df["C1"].apply(lambda x:x+1) 对某一行(row)进
阅读全文
摘要:难度:简单 知识点:二分 题目描述: 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。 解题思路: 其实可以直接返回数组种的最小值,但是这样子题目就失去了意义。
阅读全文
摘要:设置CPU生成随机数的种子,方便下次复现实验结果。 torch.manual_seed(seed) → torch._C.Generator seed(int),返回一个torch.Generator对象。 设置随机数种子之后,每次运行结果会是一样的,但是如果一个.py文件中有多个rand,那每次的
阅读全文
摘要:TypeError: 无法将 ‘numpy.generic’ objects>’ 的 '<attribute ‘dtype’ 解释为数据类型 这个问题是由numpy版本引起的。 最开始我在网上查到的解决方案是说numpy版本过低,升级就好,但是升级的时候发现我已经是最新版本了,1.21.0 然后看到
阅读全文
摘要:难度:简单 知识点:栈 题目描述: 用两个栈来实现一个队列,分别完成在队列尾部插入整数(push)和在队列头部删除整数(pop)的功能。 队列中的元素为int类型。保证操作合法,即保证pop操作时队列内已有元素。 解题思路: 栈是先进后出,队列是先进先出。 所以,要想实现先进先出,则需要两个栈,从栈
阅读全文
摘要:难度:较难 考点:字符串 题目描述: 请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 解题思路: 最容易想到的是s.replace(a,b)函数,用b直接替换a 但是replace是只有在
阅读全文
摘要:难度:中等 知识点:数组 题目描述: 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 解题思路: 最容易想到的就是直接两层for循环嵌套进行遍历,但是这样
阅读全文
摘要:难度:简单 考点:递归、动态规划 题目描述: 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶(n为正整数)总共有多少种跳法。 解题思路: 通过分析可以发现,也是一个可以递归的问题,同样,定义变量来存储中间变量方便后续取用。 # -*- coding:ut
阅读全文
摘要:难度:简单 考点: 递归 问题描述: 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。 解题思路: 类似斐波那契数列,找规律,发现是递归的,同斐波那契,如果直接写递归,时间复杂度过高,所以依然用循环来做 # -*- coding:
阅读全文
摘要:难度:入门 题目描述: 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0,第1项是1)。 思路: 1.最容易想到的是递归,但是分析发现递归的时间复杂度非常高,2^n 2.找规律,用循环,创建中间变量来保存前一轮的结果,在下一轮之中直接取用 # -*-
阅读全文
摘要:分类:字符串-子序列 题目描述: 给你一个字符串 s 和一个字符串数组 dictionary 作为字典,找出并返回字典中最长的字符串,该字符串可以通过删除 s 中的某些字符得到。 如果答案不止一个,返回长度最长且字典序最小的字符串。如果答案不存在,则返回空字符串。 class Solution: d
阅读全文
摘要:分类:二叉树-二叉树的遍历 题目描述:给定一个二叉树,返回它的 后序 遍历。 解题思路: 递归: # Definition for a binary tree node. # class TreeNode: # def __init__(self, val=0, left=None, right=N
阅读全文
摘要:分类:二叉树-二叉树的遍历 题目描述: 给定一个二叉树的根节点 root ,返回它的 中序 遍历。 解题思路: 递归: # Definition for a binary tree node. # class TreeNode: # def __init__(self, val=0, left=No
阅读全文
摘要:分类:二叉树-二叉树的遍历 题目描述: 给你二叉树的根节点 root ,返回它节点值的 前序 遍历。 解题思路: 递归: 定义 preorder(root) 表示当前遍历到 root 节点的答案。按照定义,我们只要首先将 root 节点的值加入答案,然后递归调用 preorder(root.left
阅读全文
摘要:分类:字符串-子序列 题目描述: 给定字符串 s 和 t ,判断 s 是否为 t 的子序列。 字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace"是"abcde"的一个子序列,而"aec"不是)。 解题思路1:双指针 我们初始化两个指针
阅读全文
摘要:分类:字符串-字符和数字的转换 题目描述: 给定一个 24 小时制(小时:分钟 "HH:MM")的时间列表,找出列表中任意两个时间的最小时间差并以分钟数表示。 解题思路:全部转化为分钟,最小的时间加一天算到第二天,进行跟第二大的和最大的 两个判断 并进行比较 class Solution: def
阅读全文
摘要:分类:字符串-数字与字符串间转换 题目描述: 给出 N 名运动员的成绩,找出他们的相对名次并授予前三名对应的奖牌。前三名运动员将会被分别授予 “金牌”,“银牌” 和“ 铜牌”("Gold Medal", "Silver Medal", "Bronze Medal")。 (注:分数越高的选手,排名越靠
阅读全文
摘要:分类:字符串-字符与数字串间转换 题目描述: 写一个程序,输出从 1 到 n 数字的字符串表示。 1. 如果 n 是3的倍数,输出“Fizz”; 2. 如果 n 是5的倍数,输出“Buzz”; 3.如果 n 同时是3和5的倍数,输出 “FizzBuzz”。 解题思路:直接遍历判断,取余数 class
阅读全文
摘要:分类:字符串-字符与数字串间转换 题目描述: 你在和朋友一起玩 猜数字(Bulls and Cows)游戏,该游戏规则如下: 你写出一个秘密数字,并请朋友猜这个数字是多少。朋友每猜测一次,你就会给他一个提示,告诉他的猜测数字中有多少位属于数字和确切位置都猜对了(称为“Bulls”, 公牛),有多少位
阅读全文
浙公网安备 33010602011771号