自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 leetcode链表

class Node(object): def __init__(self): self.val = None self.next = Noneclass Node_handle(): def __init__(self): self.cur_node = None # 查找 def find(self,node,num,a = 0): while node: if a == num.

2021-06-02 15:54:17 89

原创 矩阵乘法

示例1输入[[1,2],[3,2]],[[3,4],[2,1]]返回值[[7,6],[13,14]]class Solution: def solve(self , a , b ): # write code here n = len(a) ab = [[sum(a[i][k]*b[k][j] for k in range(n)) for j in range(n)] for i in range(n)] ret

2021-03-31 11:13:34 101

原创 leetcode(py)17

182. 查找重复的电子邮箱难度简单230SQL架构编写一个 SQL 查询,查找Person表中所有重复的电子邮箱。示例:+----+---------+| Id | Email |+----+---------+| 1 | a@b.com || 2 | c@d.com || 3 | a@b.com |+----+---------+根据以上输入,你的查询应返回以下结果:+---------+| Email |+---------+| a..

2020-09-18 22:44:06 107

原创 leetcode(py)16

面试题 04.02. 最小高度树难度简单52给定一个有序整数数组,元素各不相同且按升序排列,编写一个算法,创建一棵高度最小的二叉搜索树。示例:给定有序数组: [-10,-3,0,5,9],一个可能的答案是:[0,-3,9,-10,null,5],它可以表示下面这个高度平衡二叉搜索树: 0 / \ -3 9 / / -10 5 参考:通过二叉搜索树的定义,我们可以知道其根节点必然是有序

2020-09-16 11:22:16 124

原创 二叉树

1、特点每个结点最多有两颗子树,结点的度最大为2。2、左子树和右子树是有顺序的,次序不能颠倒。3、即使某结点只有一个子树,也要区分左右子树。2、特殊的二叉树满二叉树 所有的分支结点都存在左子树和右子树,并且所有的叶子结点都在同一层上,这样就是满二叉树。就是完美圆满的意思,关键在于树的平衡。 叶子只能出现在最下一层。 非叶子结点度一定是2. 在同样深度的二叉树中,满二叉树的结点个数最多,叶子树最多。 完全二叉树 对一棵具有n个结点的二叉树按层序排号,如果编号为i的

2020-09-16 11:18:53 112

原创 leetcode(py)15

1528. 重新排列字符串难度简单12给你一个字符串s和一个长度相同的整数数组indices。请你重新排列字符串s,其中第i个字符需要移动到indices[i]指示的位置。返回重新排列后的字符串。示例 1:输入:s = "codeleet", indices = [4,5,6,7,0,2,1,3]输出:"leetcode"解释:如图所示,"codeleet" 重新排列后变为 "leetcode" 官方1:class Solution:...

2020-09-15 21:50:30 79

原创 leetcode(py)14

1290. 二进制链表转整数难度简单53给你一个单链表的引用结点head。链表中每个结点的值不是 0 就是 1。已知此链表是一个整数数字的二进制表示形式。请你返回该链表所表示数字的十进制值。示例 1:输入:head = [1,0,1]输出:5解释:二进制数 (101) 转化为十进制数 (5)我的:(运行速度远比官方的快)# Definition for singly-linked list.# class ListNode:# def __in...

2020-09-11 09:27:26 85

原创 leetcode(py)13

1295. 统计位数为偶数的数字难度简单48给你一个整数数组nums,请你返回其中位数为偶数的数字的个数。示例 1:输入:nums = [12,345,2,6,7896]输出:2解释:12 是 2 位数字(位数为偶数)345 是 3 位数字(位数为奇数)2 是 1 位数字(位数为奇数)6 是 1 位数字 位数为奇数)7896 是 4 位数字(位数为偶数)因此只有 12 和 7896 是位数为偶数的数字我的:class Solution:...

2020-09-10 19:19:34 98

原创 leetcode(py)12

1365. 有多少小于当前数字的数字难度简单52给你一个数组nums,对于其中每个元素nums[i],请你统计数组中比它小的所有数字的数目。换而言之,对于每个nums[i]你必须计算出有效的j的数量,其中j满足j != i且nums[j] < nums[i]。以数组形式返回答案。示例 1:输入:nums = [8,1,2,2,3]输出:[4,0,1,1,3]解释: 对于 nums[0]=8 存在四个比它小的数字:(1,2,2 和 3)。 ...

2020-08-24 15:15:34 167

原创 leetcode(py)11

1389. 按既定顺序创建目标数组难度简单16给你两个整数数组nums和index。你需要按照以下规则创建目标数组:目标数组target最初为空。 按从左到右的顺序依次读取nums[i]和index[i],在target数组中的下标index[i]处插入值nums[i]。 重复上一步,直到在nums和index中都没有要读取的元素。请你返回目标数组。题目保证数字插入位置总是存在。示例 1:输入:nums = [0,1,2,3,4], ...

2020-08-23 16:16:22 110

原创 leetcode(py)10

1281. 整数的各位积和之差难度简单42给你一个整数n,请你帮忙计算并返回该整数「各位数字之积」与「各位数字之和」的差。示例 1:输入:n = 234输出:15 解释:各位数之积 = 2 * 3 * 4 = 24 各位数之和 = 2 + 3 + 4 = 9 结果 = 24 - 9 = 15我的:class Solution: def subtractProductAndSum(self, n: int) -> int: ..

2020-08-21 15:53:44 198

转载 位运算

位运算一、位运算概念位运算是直接对整数在二进制中进行操作。另我们的电脑电路设计都是基于二进制的,所以在二进制层面效率很高。通常位运算多用在对程序效率要求很高的场景。以下的二进制都以8位为例。第1位是符号位,后面7位是数字位。符号位用0代表非负数,用1代表负数。二、 机器数和真值1、机器数一个数在计算机中的二进制表示形式, 叫做这个数的机器数。机器数是带符号的,在计算机用一个数的最高位存放符号, 正数为0, 负数为1.比如,十进制中的数 +3 ,计算机字长为8位,转换成二进制就是00.

2020-08-21 15:09:57 2746

原创 代码的时间复杂度和空间复杂度

时间复杂度foriinrange(n):print('Hello world')# O(n)for i in range(n): for j in range(n):# O(n^2)i=1while(i<N): i=i*2# O(logN)forjinrange(n): i=1 while(i<N): i=i*2# O(nlogN)空间复杂度a = 'Pytho...

2020-08-20 21:29:40 1116

原创 leetcode(py)09

1108. IP 地址无效化难度简单56给你一个有效的IPv4地址address,返回这个 IP 地址的无效化版本。所谓无效化IP 地址,其实就是用"[.]"代替了每个"."。示例 1:输入:address = "1.1.1.1"输出:"1[.]1[.]1[.]1"我的:class Solution: def defangIPaddr(self, address: str) -> str: return address.re...

2020-08-20 21:05:02 93

原创 leetcode(py)08

LCP 01. 猜数字难度简单112小A 和 小B 在玩猜数字。小B 每次从 1, 2, 3 中随机选择一个,小A 每次也从 1, 2, 3 中选择一个猜。他们一共进行三次这个游戏,请返回 小A 猜对了几次?输入的guess数组为 小A 每次的猜测,answer数组为 小B 每次的选择。guess和answer的长度都等于3。示例 1:输入:guess = [1,2,3], answer = [1,2,3]输出:3解释:小A 每次都猜对了。我的:class S..

2020-08-20 17:09:32 107

原创 leetcode(py)07

面试题 02.03. 删除中间节点难度简单42实现一种算法,删除单向链表中间的某个节点(即不是第一个或最后一个节点),假定你只能访问该节点。示例:输入:单向链表a->b->c->d->e->f中的节点c结果:不返回任何数据,但该链表变为a->b->d->e->f单向链表顺序表的构建需要预先知道数据大小来申请连续的存储空间,而在进行扩充时又需要进行数据的搬迁,所以使用起来并不是很灵活。链表结构可以充分利用计算机内..

2020-08-20 16:58:19 76

原创 leetcode(py)06

剑指 Offer 58 - II. 左旋转字符串难度简单48字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结果"cdefgab"。示例 1:输入: s = "abcdefg", k = 2输出:"cdefgab"我的:class Solution: def reverseLeftWords(self, s: str, n: int)..

2020-08-18 21:27:55 89 1

原创 leetcode(py)05

1486. 数组异或操作难度简单8给你两个整数,n和start。数组nums定义为:nums[i] = start + 2*i(下标从 0 开始)且n == nums.length。请返回nums中所有元素按位异或(XOR)后得到的结果。5 ⊕ 3 = ?1.进行异或计算前会把数值都转换为二进制: 5和3转为二进制分别为:0101 、0011(不同为1,相同为0) 0101 xor 0011 ...

2020-08-15 21:25:34 173

原创 leetcode(py)04

1470. 重新排列数组难度简单21给你一个数组nums,数组中有2n个元素,按[x1,x2,...,xn,y1,y2,...,yn]的格式排列。请你将数组按[x1,y1,x2,y2,...,xn,yn]格式重新排列,返回重排后的数组。示例 1:输入:nums = [2,5,1,3,4,7], n = 3输出:[2,3,5,4,1,7] 解释:由于 x1=2, x2=5, x3=1, y1=3, y2=4, y3=7 ,所以答案为 [2,3,5,4,1,7]...

2020-08-14 21:28:43 100

原创 leetcode(py)03

1512. 好数对的数目难度简单18给你一个整数数组nums。如果一组数字(i,j)满足nums[i]==nums[j]且i<j,就可以认为这是一组好数对。返回好数对的数目。示例 1:输入:nums = [1,2,3,1,1,3]输出:4解释:有 4 组好数对,分别是 (0,3), (0,4), (3,4), (2,5) ,下标从 0 开始我的:class Solution: def numIdenticalPairs(...

2020-08-13 21:55:59 146

原创 leetcode(py)02

1431. 拥有最多糖果的孩子给你一个数组candies和一个整数extraCandies,其中candies[i]代表第i个孩子拥有的糖果数目。对每一个孩子,检查是否存在一种方案,将额外的extraCandies个糖果分配给孩子们之后,此孩子有最多的糖果。注意,允许有多个孩子同时拥有最多的糖果数目。输入:candies = [2,3,5,1,3], extraCandies = 3输出:[true,true,true,false,true] 解释:孩子 1 ...

2020-08-12 22:32:38 90

原创 leetcode(py)01

给你一个数组 nums 。数组「动态和」的计算公式为:runningSum[i] = sum(nums[0]…nums[i]) 。请返回 nums 的动态和。示例 1:输入:nums = [1,2,3,4]输出:[1,3,6,10]解释:动态和计算过程为 [1, 1+2, 1+2+3, 1+2+3+4] 。我的:class Solution(object): def runningSum(self, nums): output = [1]*len(nums)...

2020-08-11 15:12:13 259

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除