自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(65)
  • 资源 (1)
  • 收藏
  • 关注

转载 【目标检测】RCNN算法详解

Region CNN(RCNN)可以说是利用深度学习进行目标检测的开山之作。作者Ross Girshick多次在PASCAL VOC的目标检测竞赛中折桂,2010年更带领团队获得终身成就奖,如今供职于Facebook旗下的FAIR。 这篇文章思路简洁,在DPM方法多年平台期后,效果提高显著。包括本文在内的一系列目标检测算法:RCNN, Fast RCNN, Faster RCNN代表当下目

2017-10-11 15:42:04 563

原创 Python:连续子数组的最大和

牛客网上的剑指 offer的在线编程:题目描述HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。但是,如果向量中包含负数,是否应该包含某个负数,并期望旁边的正数会弥补它呢?例如:{6,-3,-2,7,-15,1,2,2},连续子向量的最大和为8(从第0个开始

2017-08-28 16:51:19 797

原创 Python:最小的 k 个数

牛客网上的剑指 offer的在线编程:题目描述输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。# -*- coding:utf-8 -*-'''最小的k个数题目描述输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。'''c

2017-07-24 11:55:57 1878

原创 Python:第一个只出现一次的字符

牛客网上的剑指 offer的在线编程:题目描述在一个字符串(1# -*- coding:utf-8 -*-import time'''第一个只出现一次的字符题目描述在一个字符串(1<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置'''class Solution: def FirstNotRepeatingChar

2017-07-21 21:43:21 2225

原创 Python:两个链表的第一个公共节点

牛客网上的剑指 offer的在线编程:题目描述输入两个链表,找出它们的第一个公共结点。思路:第一种情况:相同长度有交点两个指针一起走,步长一致,碰到第一个相同的节点 p1 == p1,退出循环,return p1。第二种情况:相同长度无交点两个指针一起走,直到走到最后一个节点,p1.next 和 p2.next都为 None,满足 相等的条件,退出循环,retu

2017-07-21 21:02:08 3017 1

转载 Python:集合(set)类型的操作

来自:http://blog.csdn.net/business122/article/details/7541486python的set和其他语言类似, 是一个无序不重复元素集, 基本功能包括关系测试和消除重复元素. 集合对象还支持union(联合), intersection(交), difference(差)和sysmmetric difference(对称差集)等数学运算.

2017-07-21 15:04:03 439

转载 Python:内置方法的时间复杂度

来自:http://www.cnblogs.com/work115/p/5610680.html本文翻译自Python Wiki本文基于GPL v2协议,转载请保留此协议。本页面涵盖了Python中若干方法的时间复杂度(或者叫“大欧”,“Big O”)。该时间复杂度的计算基于当前(译注:至少是2011年之前)的CPython实现。其他Python的实现(包括老版本或者尚在开

2017-07-21 14:57:36 1412

原创 Python:数组中的逆序对

牛客网上的剑指 offer的在线编程:题目描述在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数P。并将P对1000000007取模的结果输出。 即输出P%1000000007这道题目在牛客网上用Python解决的代码很难在1秒内完成,所以答案过不了方法一复制了牛客网用户 顧左 的答

2017-07-21 04:11:54 5258

原创 Python:丑数

牛客网上的剑指 offer的在线编程:题目描述把只包含因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。方法一思路:1、res用来存放排好序的丑数。每一个丑数 n 都是从小于 n 的丑数 乘以 2,3,5 中得来的。2、所以每次只需要考虑

2017-07-21 02:40:46 1666

原创 Python:数字在排序数组中出现的次数

牛客网上的剑指 offer的在线编程:题目描述统计一个数字在排序数组中出现的次数。# -*- coding:utf-8 -*-'''数字在排序数组中出现的次数题目描述统计一个数字在排序数组中出现的次数。'''class Solution:# 方法一: def GetNumberOfK1(self, data, k): # wri

2017-07-20 02:26:11 1931

原创 Python:把字符串转换成整数

牛客网上的剑指 offer的在线编程:题目描述将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0# -*- coding:utf-8 -*-'''把字符串转换成整数题目描述将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0'''clas

2017-07-20 02:01:26 5041

原创 Python:矩形覆盖

牛客网上的剑指 offer的在线编程:题目描述我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?# -*- coding:utf-8 -*-'''矩形覆盖题目描述我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少

2017-07-20 01:00:56 543

原创 Python:斐波那契数列

牛客网上的剑指 offer的在线编程:题目描述大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项。n# -*- coding:utf-8 -*-'''斐波那契数列题目描述大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项。n<=39'''class Solution: def Fibonacc

2017-07-20 00:34:44 771

原创 Python:跳台阶

牛客网上的剑指 offer的在线编程:题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。思路:第一次跳有两种可能,一种是跳 1 级台阶,一种是跳 2 级台阶,f(n) 表示跳 n 级台阶的跳法。所以 f(n) = f(n - 1) + f(n - 2)当 n 为 1 或 2 时,return 1 ,2n 从

2017-07-19 21:44:43 1093

原创 Python:旋转数组的最小数字

牛客网上的剑指 offer的在线编程:题目描述把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。# -*- coding:utf-8 -*-

2017-07-19 20:28:30 821

原创 Python:快速排序算法

快速排序:空间复杂度为O(log n),时间复杂度为[O(n log n), O(n^2)],算法不稳定,不具有适应性1、从序列中取出一个数作为基准数2、分区,比基准数大的放基准数右边,小的放左边3、递归,重复第二步操作,直到基准数的左边和右边分别只剩一个数算法的稳定性是指:对于待排序的序列中,相同项的原来次序不能被改变算法的适应性是指:算法因为原序列有序而更高效def q

2017-07-19 15:23:17 399

原创 Python:堆排序算法

堆排序算法:空间复杂度为O(1),时间复杂度为O(nlogn),算法不稳定,不具有适应性1、构造初始堆:对所有的非叶子节点进行筛选(小顶堆向下筛选,大顶堆向上筛选)2、进行堆排序:交换堆顶和最后一个元素,最后一个元素为有序区,剩下的为无序区,调整无序区,变成堆之后,堆无序区交换堆顶和最后一个元素,以此类推算法的稳定性是指:对于待排序的序列中,相同项的原来次序不能被改变算法的适应

2017-07-19 15:21:58 394

原创 Python:冒泡排序算法

冒泡排序:空间复杂度为O(1),时间复杂度为O(n^2),改进算法的时间复杂度最好情况为O(n),算法稳定,具有适应性比较相邻元素,如为逆序,则交换位置算法的稳定性是指:对于待排序的序列中,相同项的原来次序不能被改变算法的适应性是指:算法因原序列有序而更高效def bubble_sort(lst): for i in range(len(lst)): f

2017-07-19 15:20:30 518

原创 Python:归并排序算法

归并排序算法:空间复杂度为O(n),时间复杂度为O(n log n),算法稳定,不具有适应性1、将序列分两左右两部分2、递归,重复第一步,直到左右两部分里面的元素数量为13、合并每个左右的部分,从小到大4、完成合并算法的稳定性是指:对于待排序的序列中,相同项的原来次序不能被改变算法的适应性是指:算法因原序列有序而更高效def merge_sort(lst):

2017-07-19 15:19:04 506

原创 Python:插入排序算法

插入排序:空间复杂度为O(1),时间复杂度为[O(n),O(n^2)],算法稳定,具有适应性1、当前需要排序的元素跟已经排好序的最后一个元素进行比较,如果满足条件则进行下面的操作,否则循环到下一个要排序的元素2、缓存当前需要排序的元素,以便找到正确的位置进行插入3、排序的元素跟排好序的元素进行比较,大的向后移(升序)4、当前要排序的元素,插入到正确的位置算法的稳定性是指:对

2017-07-19 15:17:40 472

原创 Python:直接选择排序算法

选择排序:空间复杂度为O(1),时间复杂度为O(n^2),算法不稳定,不具有适应性1、扫描,获取最小元素2、与排好序的后一个元素交换位置算法的稳定性是指:对于待排序的序列中,相同项的原来次序不能被改变但是选择排序算法将最小元素与排好序的后一个元素交换位置时,可能会造成相同项次序交换。算法的适应性是指:算法因原序列有序而更高效def select_sort(lst

2017-07-19 15:16:11 485

原创 Python:重建二叉树

牛客网上的剑指 offer的在线编程:题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。# -*- coding:utf-8 -*-'''重建二叉树题目描述输入某二叉树的

2017-07-17 13:03:57 3760

原创 Python:数据流中的中位数

牛客网上的剑指 offer的在线编程:题目描述如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。# -*- coding:utf-8 -*-'''数据流中的中位数题目描述如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值

2017-07-17 11:20:00 1609

原创 Python:二叉搜索树的第k个节点

牛客网上的剑指 offer的在线编程:题目描述给定一颗二叉搜索树,请找出其中的第k大的结点。例如, 5 / \ 3 7 /\ /\ 2 4 6 8 中,按结点数值大小顺序第三个结点的值为4。# -*- coding:utf-8 -*-'''二叉搜索树的第k个节点题目描述给定一颗二叉搜索树,请找出其中的第k大的结点。例如, 5 / \ 3 7 /\ /\ 2

2017-07-17 10:27:35 1018

原创 Python:对称的二叉树

牛客网上的剑指 offer的在线编程:题目描述请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。class TreeNode: def __init__(self, x): self.val = x self.left = None self.right

2017-07-16 02:03:46 891

原创 Python:把二叉树打印成多行

牛客网上的剑指 offer的在线编程:题目描述从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。# -*- coding:utf-8 -*-class TreeNode: def __init__(self, x): self.val = x self.left = None self.righ

2017-07-16 00:06:56 647

原创 Python:按之字形顺序打印二叉树

牛客网上的剑指 offer的在线编程:题目描述请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。# -*- coding:utf-8 -*-class TreeNode: def __init__(self, x): self.val = x

2017-07-15 23:48:03 534

原创 Python:序列化二叉树

牛客网上的剑指 offer的在线编程:题目描述请实现两个函数,分别用来序列化和反序列化二叉树class TreeNode: def __init__(self, x): self.val = x self.left = None self.right = Noneclass Solution: def S

2017-07-14 18:42:55 1482

原创 Python:二叉树的下一个节点

牛客网上的剑指 offer的在线编程:题目描述给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。# -*- coding:utf-8 -*-class TreeLinkNode: def __init__(self, x): self.val = x

2017-07-14 16:45:30 1124

转载 python assert的作用

来自:http://www.cnblogs.com/liuchunxiao83/p/5298016.html使用assert断言是学习python一个非常好的习惯,python assert 断言句语格式及用法很简单。在没完善一个程序之前,我们不知道程序在哪里会出错,与其让它在运行最崩溃,不如在出现错误条件时就崩溃,这时候就需要assert断言的帮助。本文主要是讲assert断言的

2017-07-14 10:15:08 330

原创 Python :用两个栈实现队列

牛客网上的剑指 offer的在线编程:题目描述用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。# -*- coding:utf-8 -*-class Solution: def __init__(self): self.stack1 = [] self.stack2 = [] def

2017-07-13 21:17:04 3955

原创 Python :滑动窗口的最大值

牛客网上的剑指 offer的在线编程:题目描述给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值。例如,如果输入数组{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],2,6,2,5,1}, {2,[3,4

2017-07-13 20:31:49 1529

转载 Python中的yield

来自:http://blog.csdn.net/u012671171/article/details/42169843def fib(max): a, b = 1, 1 while a < max: yield a a, b = b, a+bfor n in fib(15): print nm = fib(13)prin

2017-07-12 21:19:31 288

原创 Python :替换空格

牛客网上的剑指 offer的在线编程:题目描述请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。# -*- coding:utf-8 -*-#import reclass Solution: # s 源字符串 def replaceSpace(

2017-07-12 17:44:36 933

原创 Python :正则表达式匹配

牛客网上的剑指 offer的在线编程:题目描述请实现一个函数用来匹配包括'.'和'*'的正则表达式。模式中的字符'.'表示任意一个字符,而'*'表示它前面的字符可以出现任意次(包含0次)。 在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字符串"aaa"与模式"a.a"和"ab*ac*a"匹配,但是与"aa.a"和"ab*a"均不匹配# -*- coding:

2017-07-12 17:22:36 381

原创 Python :表示数值的字符串

牛客网上的剑指 offer的在线编程:题目描述请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。# -*- coding:utf-8 -*-import reclass

2017-07-11 23:35:44 487

原创 Python :字符流中第一个不重复的字符

牛客网上的剑指 offer的在线编程:题目描述请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是"g"。当从该字符流中读出前六个字符“google"时,第一个只出现一次的字符是"l"。输出描述:如果当前字符流没有存在出现一次的字符,返回#字符# -*- coding:utf-8 -*-c

2017-07-11 22:10:07 2545

原创 Python :链表中环的入口节点

牛客网上的剑指 offer的在线编程:题目描述一个链表中包含环,请找出该链表的环的入口结点。# -*- coding:utf-8 -*-class ListNode: def __init__(self, x): self.val = x self.next = Noneclass Solution: def Entr

2017-07-10 11:31:47 609

原创 Python :从尾到头打印链表

牛客网上的剑指 offer的在线编程:题目描述:输入一个链表,从尾到头打印链表每个节点的值# -*- coding:utf-8 -*-# class ListNode:# def __init__(self, x):# self.val = x# self.next = Noneclass Solution: #

2017-06-18 11:44:20 3906

原创 Python :删除链表中重复的节点

牛客网上的剑指 offer的在线编程:题目描述:在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5# -*- coding:utf-8 -*-class ListNode: def __init__(self, x): s

2017-06-18 11:43:20 2195

全国行政区划代码

全国行政区划代码全国行政区划代码全国行政区划代码全国行政区划代码全国行政区划代码

2018-06-27

空空如也

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

TA关注的人

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