自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【无标题】

layoutlmv2

2023-02-08 23:18:35 102 1

翻译 TVM安装

源码:wget http://tvm.d2l.ai/d2l-tvm.zipunzip d2l-tvm.zip -d d2l-tvm也可以到GitHub搜索tvm,然后需要把在3rd文件夹里面空的依赖下载好之后放在该文件夹然后:mkdir buildcp config.cmake build/gedit build/config.cmake设置:set(USE_LLVM ON)# 如果想使用cuda# set(USE_CUDA ON)最后:cmake ..

2020-09-10 15:16:51 187

转载 CUDA中的常量内存__constant__和cudaMemcpyToSymbol

__constant__声明内存为常量内存使用常量内存可以提升运算性能的原因如下:对常量内存的单次读操作可以广播到其他的“邻近(nearby)”线程,这将节约15次读取操作; 高速缓存。常量内存的数据将缓存起来,因此对于相同地址的连续操作将不会产生额外的内存通信量;在CUDA架构中,线程束是指一个包含32个线程的集合,这个线程集合被“编织在一起”并且以“步调一致(Lockstep)”的形式执行。当处理常量内存时,NVIDIA硬件将把单次内存读取操作广播到每个半线程束(Half-Warp).

2020-05-27 16:44:20 2123

原创 cudaMallocPitch和cudaMalloc3D用法

cudaMallocPitch:cudaMalloc3D:

2020-05-27 16:15:33 617

原创 合并两个有序数组

要求原地合并,我的做法比较复杂,双指针,比较i和j位置的值,若i位置值大于j位置值,则互换,并对j位置值排序,代码为:class Solution: def merge(self, nums1: List[int], m: int, nums2: List[int], n: int) -> None: """ Do not return anyt...

2020-03-17 14:40:49 124

原创 将有序数组转换为二叉搜索树

# Definition for a binary tree node.# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None# self.right = Noneclass Solution: def sortedArrayT...

2020-03-17 11:43:26 132

原创 验证二叉搜索树

# Definition for a binary tree node.# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None# self.right = Noneclass Solution: def isValidBST(s...

2020-03-16 15:57:56 90

原创 环形链表

空间复杂度O(1): 快指针追上慢指针即可确定有回环# Definition for singly-linked list.# class ListNode:# def __init__(self, x):# self.val = x# self.next = Noneclass Solution: def hasCycle(sel...

2020-03-09 22:05:45 96

原创 回文链表

题目说要时间复杂度O(n),空间复杂度O(1)的解法,我没做出来。。。我的解法就是简单的把问题转化为回文数列:速度倒是很快,就是空间占用很高使用了一个result保存所有值# Definition for singly-linked list.# class ListNode:# def __init__(self, x):# self.val = x# ...

2020-03-09 20:26:37 87

原创 合并两个有序链表

# Definition for singly-linked list.# class ListNode:# def __init__(self, x):# self.val = x# self.next = Noneclass Solution: def mergeTwoLists(self, l1: ListNode, l2: Li...

2020-03-09 18:52:35 138

原创 删除链表的倒数第N个节点

我的方法是用一个队列,保存后N个节点,但是内存消耗比较大,方法如下:# Definition for singly-linked list.# class ListNode:# def __init__(self, x):# self.val = x# self.next = Noneclass Solution: def remo...

2020-03-09 13:41:45 106

原创 外观数列

class Solution: def countAndSay(self, n: int) -> str: if n == 1: return "1" else: return self.nextItem(self.countAndSay(n-1)) ...

2020-03-08 15:02:07 200

原创 字符串转换整数 (atoi)

利用正则表达式可以很方便解决:正则式为:r"^[\+\-]?[0-9]+"其中:^表示从开头开始匹配 [\+\-]表示字符可以是+ or - ?表示可以没有+ or - [0-9]代表从0-9的数字 +代表任意位数正则式好久没用到了就忘了,还是要复习一下,毕竟对于字符串问题很容易解决class Solution: def myAtoi(self, str: ...

2020-03-08 13:41:25 101

原创 验证回文串

class Solution: def isPalindrome(self, s: str) -> bool: s = s.lower() i = 0 j = len(s) - 1 string = "abcdefghijklmnopqrstuvwxyz0123456789" whil...

2020-03-04 16:17:08 153

原创 有效的字母异位词

collections中的Counter真是香。。。class Solution: def isAnagram(self, s: str, t: str) -> bool: from collections import Counter sCounter = Counter([i for i in s]) tCo...

2020-03-04 15:46:05 149 1

原创 字符串中的第一个唯一字符

class Solution: def firstUniqChar(self, s: str) -> int: if len(s) == 0: return -1 visited = {} #保存奇数重复的字母 visited_list = {} #保存所有重复的字母 for i, char i...

2020-03-04 15:23:47 146

原创 整数反转

字符串也可以[::-1]反转,非常神奇(也可以使用指针方法反转):class Solution: def reverse(self, x: int) -> int: string = str(x)[::-1] result = int(string) if x >= 0 else int(string[:-1]) * (-...

2020-03-02 22:35:12 100

原创 旋转图像

顺时针90°旋转先转置,再对每行反转逆时针90°相反class Solution: def rotate(self, matrix: List[List[int]]) -> None: """ Do not return anything, modify matrix in-place instead. """ ...

2020-03-02 21:58:48 147 1

原创 有效的数独

因为每次按行遍历,因此建立一个行哈希表,9个列哈希表,和3个方格哈希表,通过查询元素是否在相应表中来判断:class Solution: def isValidSudoku(self, board: List[List[str]]) -> bool: columnsValid = [{}, {}, {}, {}, {}, {}, {}, {}, {}] ...

2020-02-19 17:23:13 90

原创 两数之和

建立对应的哈希表,key=数,value=索引,遍历一次,每次找target-num即可:class Solution: def twoSum(self, nums: List[int], target: int) -> List[int]: temp = {} for i, num in enumerate(...

2020-02-19 16:21:18 84

原创 移动零

由删除排序数组中的重复项来的灵感,都是交换类题目,双指针,k之前的都是有效位class Solution: def moveZeroes(self, nums: List[int]) -> None: """ Do not return anything, modify nums in-place instead. """ ...

2020-02-19 11:22:52 105

原创 两个数组的交集 II

解法是使用字典保存nums1和其计数,再遍历nums2即可class Solution: def intersect(self, nums1: List[int], nums2: List[int]) -> List[int]: v1 = {} for n1 in nums1: try: v...

2020-02-19 10:52:08 69

原创 只出现一次的数字

哈希表法:class Solution: def singleNumber(self, nums: List[int]) -> int: visited = {} for num in nums: try: visited.pop(num) ...

2020-02-19 10:07:22 81

原创 存在重复元素

使用哈希表(字典),出现访问错误会报KeyError,若未出现即返回True,否则返回False,复杂度O(N)class Solution: def containsDuplicate(self, nums: List[int]) -> bool: visited = {} for num in nums: try: ...

2020-02-19 09:26:53 83

原创 买卖股票的最佳时机 II

想法是取到低峰和高峰相减,我的解法:class Solution: def maxProfit(self, prices: List[int]) -> int: if not prices: return 0 benefit = 0 i ...

2020-02-18 17:48:50 121

原创 删除排序数组中的重复项

因为是排序数据,所以极其简单:class Solution: def removeDuplicates(self, nums: List[int]) -> int: if nums: k = 0 for num in nums[1:]: i...

2020-02-18 17:07:14 82

原创 逆波兰表达式求值

本想用字典代替if判断会快,然而。。。并不会:class Solution: def __init__(self): self.operator = { '+': self.add, '-': self.sub, '*': self.mul, '/': self....

2020-02-08 16:47:27 160

原创 每日温度

队列解法:(速度慢)class Solution: def dailyTemperatures(self, T: List[int]) -> List[int]: len_T = len(T) from collections import deque result = deq...

2020-02-07 17:25:04 146

原创 有效的括号

class Solution: def isValid(self, s: str) -> bool: if s is None: return True stack = [] flag = { ']': '[', ')':...

2020-02-05 16:52:00 100

原创 最小栈

这个题本来用的每次求最小值的方法,后来看了大佬的才想明白只需要每次在__minstack中记录最小,由于栈是先进后出规则,因此,小的还没有弹出的时候弹出元素不影响最小值。class MinStack: def __init__(self): """ initialize your data structure here. """ ...

2020-02-05 15:04:15 100

原创 完全平方数

先算小于N的完全平方数,再用这些数做广度优先:class Solution: def numSquares(self, n: int) -> int: if n == 0: return 0 tempNum = [] x = 1 i = ...

2020-02-04 12:22:43 256

原创 岛屿数量

BFS方法,每次发现为‘1’的岛屿才搜索,且只要搜到连通域就将其置‘0’:class Solution: def numIslands(self, grid: List[List[str]]) -> int: len_i = len(grid) if len_i == 0: return 0 len_j ...

2020-01-13 20:42:59 196

原创 设计循环队列

你的实现应该支持如下操作:MyCircularQueue(k): 构造器,设置队列长度为 k 。 Front: 从队首获取元素。如果队列为空,返回 -1 。 Rear: 获取队尾元素。如果队列为空,返回 -1 。 enQueue(value): 向循环队列插入一个元素。如果成功插入则返回真。 deQueue(): 从循环队列中删除一个元素。如果成功删除则返回真。 isEmpty()...

2020-01-12 20:26:06 262

原创 二叉树的最近公共祖先

还可以再优化,使用递归两步解决,第一步找出p的所有父节点,第二步从p的最后一个父节点开始依次找q# Definition for a binary tree node.# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None# self....

2020-01-12 15:17:04 100

原创 填充每个节点的下一个右侧节点指针 II

迭代方法,(遇到了一个超长的测试用例,结果超时了。。。。。):"""# Definition for a Node.class Node: def __init__(self, val: int = 0, left: 'Node' = None, right: 'Node' = None, next: 'Node' = None): self.val = val...

2020-01-11 16:02:23 157

原创 填充每个节点的下一个右侧节点指针

我的方法,使用颜色层次遍历法,依次填next:"""# Definition for a Node.class Node: def __init__(self, val: int = 0, left: 'Node' = None, right: 'Node' = None, next: 'Node' = None): self.val = val ...

2020-01-09 21:21:12 101

原创 从中序与后序遍历序列构造二叉树

由于后序遍历时最后节点是根节点,接着是右子树的根节点,一直往下。。。# Definition for a binary tree node.# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None# self.right = None...

2020-01-09 17:45:26 129

原创 路径总和

递归,直接把问题转换为叶子节点的val是否等于sum(注:使用return 递归 or 递归的方法将叶子节点的返回值传递至root节点)。# Definition for a binary tree node.# class TreeNode:# def __init__(self, x):# self.val = x# self.left =...

2020-01-09 16:14:48 134

原创 对称二叉树

递归解法:我的解法是层序遍历然后每层取eq(line,line[::-1]):# Definition for a binary tree node.# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None# self.right =...

2020-01-09 13:44:32 96

原创 二叉树的最大深度

# Definition for a binary tree node.# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None# self.right = Noneclass Solution: def maxDepth(sel...

2020-01-08 21:24:52 77

空空如也

空空如也

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

TA关注的人

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