自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

qq_22441151的博客

临渊羡鱼,不若退而结网

  • 博客(11)
  • 收藏
  • 关注

原创 动态规划超详细长文

动态规划本文搬运自天池leetcode刷题组对学习,仅用于个人学习,笔记。附上以前写的三篇day1day2day3后面补,待续!!!

2020-08-23 23:17:26 283

原创 分值算法(三)

实现归并排序def merge_sort(nums) n = len(nums) if n <= 1: return nums mid = n //2 left_li = merge_sort(nums[:mid]) # 嵌套递归,且上一级函数的执行需要下一级函数的返回值 right_li = merge_sort(nums[mid:]) left_pointer,right_pointer = 0,0 result =

2020-08-23 22:32:23 331

原创 分治算法(二)

1 实现归并排序def merge_sort(nums): n = len(nums) mid = n // 2 if n <= 1: return nums # 分 left_li =merge_sort(nums[:mid]) right_li = merge_sort(nums[mid:]) # 治 left_pointer,right_pointer = 0,0 result = [] while left_pointer < len(left_li) an

2020-08-21 23:14:06 135

原创 数据结构与算法之分治思想

分治1. 主要思想分值算法的主要思想是将一个规模很大的问题化简为n个规模较小的问题,这些子问题虽然独立而不同,但是问题的本质是一致的,从而达到分而治之的目的。2. 分值算法的步骤分:递归的将问题分解为各个子问题(性质相同,相互独立的子问题)治:将这些规模更小的问题逐个击破合:将已解决的子问题逐层合并,最终得出原问题leetcode 169.多数元素给定一个大小为n的数组,找到其中的众数,众数是指在数组中出现次数大于 n/2 的元素def majorityelement(self,num

2020-08-19 22:56:49 213

原创 树(二)之二叉搜索树

class Node(object): def __init__(self,item,left=None,right=None): self._item = item self._left = left self._right = rightclass binary_search_tree(object): def __init__(self,root=None): self._root = root

2020-08-15 23:48:54 93

原创 刷题day6

1 二叉树的最大深度一般来说涉及二叉树的题目都是使用递归。class Node(object): def __init__(self,node): self.elem =node self.left = None self.right = Noneclass solution(object): def maxdeepth(self,root): if root == None: return 0 else: return 1 + max(max(self.maxde

2020-08-09 21:50:02 139

原创 数据结构与算法之树(一)

1. 树的概念树(tree)是一种抽象的数据结构,用来模拟具有树状结构性质的的数据集和。它是由n个有限节点组成具有层次关系的集合。每个节点有零个或多个子节点;没有父节点的节点称为根节点;每一个非根节点有且只有一个父节点;除了根节点外,每个子节点可以分为多个不相交的子树;下面是霍夫曼树的结构图1.2 树的术语节点的度:一个节点含有的子树的个数称为该节点的度;树的度:一棵树中,最大的节点的度称为树的度;叶节点或终端节点:度为零的节点;父亲节点或父节点:若一个节点含有子节点,则这个节

2020-08-09 18:52:14 167

原创 数据结构与算法学习 day 6

1.二分查找二分查找类似于查字典,先翻译版,判断目标在那一半,然后再翻一半,再进行判断。缺点是要求待查表为有序表,首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一子表,否则进一步查找后一子表。重复以上过程,直到找到满足条件的记录,使查找成功,或直到子表不存在为止,此时查找不成功。最坏时间复杂度 0(logN)def binary_search(a

2020-08-08 23:26:21 99

原创 刷题 day5

1.矩阵搜索(1)编写一个高效的算法来判断 m x n 矩阵中,是否存在一个目标值。该矩阵具有如下特性:每行中的整数从左到右按升序排列。每行中的整数从左到右按升序排列。思路:矩阵中的元素的全部按照顺序排列的,所以如果展成排序的列表,使用二分查找即可。其中:row = idx // nclo = idx % ndef search_matrix(matrix,target): m = len(matrix) if m == 0: return False n = len(mat

2020-08-06 00:32:00 183

原创 基础算法之排序(一)

1 冒泡排序按照一个列表中从左到右,依次的将list[i] 和list[i+1]进行比较,将大的数放到右边,直至最大数被排到最大的位置。将上述循环执行直到所有数都已经正确的排序def bubble_sort(alist): n = len(alist) for j in range(n-1):#这里的j表示已经有j个数已经排好了 count = 0 for i in range(n-1-j):#每排好一个数,需要比较的数就少一个 if alist[i] > alist[i+1]

2020-08-05 19:27:04 150

原创 预训练模型BERT简单介绍

1.BERT模型BERT的全称是Bidirectional Encoder Representation from Transformers,即双向Transformer的Encoder,因为decoder是不能获要预测的信息的。模型的主要创新点都在pre-train方法上,即用了Masked LM和Next Sentence Prediction两种方法分别捕捉词语和句子级别的representation。1.1 BERT的模型结构BERT模型进一步增加词向量模型泛化能力,充分描述字符级、词级、句子

2020-08-05 00:08:40 2805

空空如也

空空如也

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

TA关注的人

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