自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 问答 (1)
  • 收藏
  • 关注

原创 动态规划常见题(Python)

由于动态规划一直是一个比较难的点,因此在这里将leetcode刷题过程中碰到的比较常见的动态规划题记录下来。不定期更新。1.最长回文子串 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为1000。输入: "babad"输出: "bab"注意: "aba"也是一个有效答案。先上代码:class Solution(object): d...

2018-09-17 10:08:52 1123

转载 python实现四维卷积

转自python实现卷积层的前向后向传播过程前向传播import numpy as npdef conv_forward_naive(x, w, b, conv_param): """ A naive implementation of the forward pass for a convolutional layer. The input consists...

2018-09-10 10:27:18 2117

原创 快速排序及改进(Python)

普通的快排我们可以选择数组首元素或尾元素作为pivot,代码如下def quick_sort(nums): if not nums: return [] else: div=nums[0] left=quick_sort([l for l in nums[1:] if l<=div]) right=quick_sort([r for r in nums[1:] if...

2018-08-20 10:58:31 1726 1

转载 海量数据处理 - 10亿个数中找出最大的10000个数(top K问题)

原文地址https://blog.csdn.net/zyq522376829/article/details/47686867有1亿个浮点数,如果找出期中最大的10000个?        最容易想到的方法是将数据全部排序,然后在排序后的集合中进行查找,最快的排序算法的时间复杂度一般为O(nlogn),如快速排序。但是在32位的机器上,每个float类型占4个字节,1亿个浮点数就要占用40...

2018-08-15 10:56:44 1944

原创 拼多多笔试题解析

120分钟,共四道编程题。1.输出一个数组A最长的“山谷”子数组B的长度。山谷是指B[0]>B[1]>...B[i-1]>B[i]<B[i+1]<...<B[B.length-1]。B可以是A的子数组或者等于A。如果子数组长度小于3,则返回0。思路:对每个数,向左搜索,若比当前数大,则一直搜索。向右搜索,若比当前数大,则一直搜索。代码如下:de...

2018-07-23 15:52:42 3019

原创 记录一下最近碰到的几个常见编程题

1.字符串的全排列思路:以abc为例,取出b,分别在a的前后插入b,可以得到ab,ba,然后再ab的每一个位置插入c,可以得到cab,acb,abc,对ba采取同样的操作。最终可以得到全排列的6种结果。代码如下:# -*- coding:utf-8 -*-class Solution: def Permutation(self, ss): # write c...

2018-07-20 22:02:30 513

原创 二叉树常见问题(递归与非递归,Python)

先上三种遍历方式的递归版代码:前序遍历:ans=[]def PreOrder_Recursive(root): if root: ans.append(root.val) PreOrder_Recursive(root.left) PreOrder_Recursive(root.right)中序遍历:ans=[]def...

2018-07-14 16:37:24 911

原创 求一个无序数组的中位数(Python)

最简单的方法是先将数组排序,然后找中位数。但此种方法肯定不是最优的。一个比较好的做法是利用小顶堆。思路如下:1.取前len(nums)/2个元素建立小顶堆。可以知道堆顶元素是前len(nums)/2个元素中最小的。2.从第len(nums)/2+1个元素开始,依次将其与堆顶元素比较。若比对顶元素大,则替换之,并调整堆。3.数组剩下的所有元素比较完后,可以输出中位数。数组长度为奇数时,输出堆顶元素即...

2018-07-12 10:31:17 5086

转载 常见查找算法(Python)

1.线性查找def sequentia_search(nums,key): for i in nums: if i==key: return True return False2.二分查找def binary_search(nums,key): start,end=0,len(nums)-1 while start<en...

2018-07-10 16:34:21 207

原创 计算条件熵代码(Python)

首先给出条件熵的定义,摘自维基百科:If {\displaystyle H(Y|X=x)} is the entropy of the discrete random variable {\displaystyle Y} conditioned on the discrete random variable {\displaystyle X} taking a certain value {\di...

2018-07-10 10:59:58 6359 6

原创 常见单链表相关问题总结(Python)

总结了一些链表中常见的问题,供以后翻阅。首先定义单个结点# Definition for singly-linked list.class ListNode(object): def __init__(self, x): self.val = x self.next = None1.反转单链表输入: 1->2->3->4->5-&g...

2018-07-06 16:07:02 507

转载 排序算法总结(Python版本)

看了很多排序算法,每种算法都有多个版本,现总结一版自己觉得容易理解的,供以后翻阅。1.插入排序直接插入排序直接插入排序是将一个数插入到已经排序好的序列中。做法是先将第一个数作为已经排序好的,依此将后面的数取出插入到前面已排序好的序列中。def insert_sort(nums): for i in range(len(nums)): for j in range(i): ...

2018-07-05 11:08:27 226

空空如也

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

TA关注的人

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