编程算法
独鹿
啊哈
展开
-
快排
def sq(l,s,e): i = s j = e-1 tmp = l[i] while i <j: while i<j and l[j]>tmp: j -= 1 l[i] = l[j] while i<j and l[i]<=tmp: i...原创 2018-05-15 11:21:55 · 388 阅读 · 0 评论 -
leetcode 384shuffle a array
class Solution(object): def __init__(self, nums): """ :type nums: List[int] """ self.nums = nums def reset(self): """ Resets the原创 2017-05-17 09:40:29 · 207 阅读 · 0 评论 -
leetcode138Copy List with Random Pointer
class Solution(object): def copyRandomList(self, head): """ :type head: RandomListNode :rtype: RandomListNode """ #copyhead=RandomListNode(0)原创 2017-05-08 16:30:06 · 227 阅读 · 0 评论 -
[leetcode328.]Odd Even Linked List
题目大意:将奇数位置节点和偶数位置节点放一起后拼接起来 # Definition for singly-linked list. # class ListNode(object): # def __init__(self, x): # self.val = x # self.next = None class Solution(objec原创 2017-05-06 21:39:19 · 225 阅读 · 0 评论 -
[leetcode 237]Delete Node in a Linked List
# Definition for singly-linked list. # class ListNode(object): # def __init__(self, x): # self.val = x # self.next = None class Solution(object): def deleteNode(self,原创 2017-05-06 21:04:47 · 183 阅读 · 0 评论 -
[leetcode206]Reverse Linked List
# Definition for singly-linked list. # class ListNode(object): # def __init__(self, x): # self.val = x # self.next = None class Solution(object): def reverseList(self原创 2017-05-06 20:27:31 · 260 阅读 · 0 评论 -
[leetcode203]Remove Linked List Elements
# Definition for singly-linked list. # class ListNode(object): # def __init__(self, x): # self.val = x # self.next = None class Solution(object): def removeElements(s原创 2017-05-06 19:25:22 · 225 阅读 · 0 评论 -
330. Patching Array
class Solution(object): def minPatches(self, nums, n): """ :type nums: List[int] :type n: int :rtype: int """ size=len(nums) i,add,原创 2017-05-15 11:55:02 · 237 阅读 · 0 评论 -
[leetcode238]Product of Array Except Self
class Solution(object): def productExceptSelf(self, nums): """ :type nums: List[int] :rtype: List[int] """ res=[0]*len(nums) res[0]=1原创 2017-05-15 10:40:33 · 197 阅读 · 0 评论 -
LEETCODE73Set Matrix Zeroes
class Solution(object): def setZeroes(self, matrix): """ :type matrix: List[List[int]] :rtype: void Do not return anything, modify matrix in-place instead. """原创 2017-05-05 23:26:46 · 280 阅读 · 0 评论 -
LEETCODE77Combinations
class Solution(object): def combine(self, n, k): """ :type n: int :type k: int :rtype: List[List[int]] candidates=[x for x in range(1,n+1)] i原创 2017-05-05 22:54:23 · 183 阅读 · 0 评论 -
leetcode 109Convert Sorted List to Binary Search Tree
# Definition for singly-linked list. # class ListNode(object): # def __init__(self, x): # self.val = x # self.next = None # Definition for a binary tree node. # class Tre原创 2017-05-08 17:19:00 · 213 阅读 · 0 评论 -
leetcode143Reorder List
# Definition for singly-linked list. # class ListNode(object): # def __init__(self, x): # self.val = x # self.next = None class Solution(object): def reorderList(self原创 2017-05-08 17:46:16 · 209 阅读 · 0 评论 -
[Leetcode 25] Reverse Nodes in k Group
# Definition for singly-linked list. # class ListNode(object): # def __init__(self, x): # self.val = x # self.next = None class Solution(object): def reverseKGroup(se原创 2017-05-08 19:53:06 · 227 阅读 · 0 评论 -
[leetcode 53]Maximum Subarray
class Solution(object): def maxSubArray(self, nums): """ :type nums: List[int] :rtype: int """ if not nums: return None d=[0]*le原创 2017-05-09 21:46:32 · 194 阅读 · 0 评论 -
[leetcode108]Convert Sorted Array to Binary Search Tree
# Definition for a binary tree node. # class TreeNode(object): # def __init__(self, x): # self.val = x # self.left = None # self.right = None class Solution(objec原创 2017-05-09 21:14:45 · 199 阅读 · 0 评论 -
[leetcode 560]Subarray Sum Equals K
题目:求连续子集和为k的个数代码出自:https://discuss.leetcode.com/topic/88041/super-simple-pythonclass Solution(object): def subarraySum(self, nums, k): """ :type nums: List[int] :type k: int ...原创 2017-05-18 15:13:18 · 527 阅读 · 0 评论 -
[leetcode525]Contiguous Array
class Solution(object): def findMaxLength(self, nums): """ :type nums: List[int] :rtype: int """ for i in range(len(nums)): if nums[i]==0原创 2017-05-17 17:45:38 · 452 阅读 · 0 评论 -
[leetcode 33]Search in Rotated Sorted Array
class Solution(object): def search(self, nums, target): """ :type nums: List[int] :type target: int :rtype: int """ n=len(nums) l,r=原创 2017-05-09 11:08:26 · 172 阅读 · 0 评论 -
[leetcode462] Minimum Moves to Equal Array Elements II
class Solution(object): def minMoves2(self, nums): """ :type nums: List[int] :rtype: int """ l,r ,count = 0,len(nums)-1,0 nums.sort()原创 2017-05-17 16:40:01 · 289 阅读 · 0 评论 -
[leetcode 448]Find All Numbers Disappeared in an Array
同442一样,只是判断条件不一样 class Solution(object): def findDisappearedNumbers(self, nums): """ :type nums: List[int] :rtype: List[int] """ f=[0]*(len(nums)原创 2017-05-17 15:16:26 · 303 阅读 · 0 评论 -
27. Remove Element
题目:数组中的重复元素都删掉,且返回长度 要求:不可另外开空间 解题思路:用两个指针,一个指开头,一个指结尾,当开头的与所给值相同时把结尾的值赋值过来,尾指针向前 class Solution(object): def removeElement(self, nums, val): """ :type nums: List[int]原创 2017-05-08 21:34:17 · 213 阅读 · 0 评论 -
26 Remove Duplicates from Sorted Array
题目:删除有序数组中的重复元素,返回长度 要求:不能重新分配内存空间 解题: class Solution(object): def removeDuplicates(self, nums): """ :type nums: List[int] :rtype: int """原创 2017-05-08 20:41:14 · 171 阅读 · 0 评论 -
[leetcode 410]Split Array Largest Sum
题目理解:给一个非负数组,和划分数组的个数m 问题:返回划分的m个子数组中和最大的哪个和,因为划分m个子数组的方法有很多种,假设有k种划分m个子数组的方法,所以就有k个子数组最大和的值,求出这k个值中最小的哪个值返回来。 解决:二分查找 (代码参考https://discuss.leetcode.com/topic/62139/python-solution-dp-and-binar原创 2017-05-17 11:23:26 · 447 阅读 · 0 评论 -
leetcode81Search in Rotated Sorted Array II
class Solution(object): def search(self, nums, target): """ :type nums: List[int] :type target: int :rtype: bool """ if not nums:原创 2017-05-05 21:17:22 · 290 阅读 · 0 评论 -
leetcode82Remove Duplicates from Sorted List II
# Definition for singly-linked list. # class ListNode(object): # def __init__(self, x): # self.val = x # self.next = None class Solution(object): def deleteDuplicates原创 2017-05-05 20:57:41 · 250 阅读 · 0 评论 -
leetcode83Remove Duplicates from Sorted List
# Definition for singly-linked list. # class ListNode(object): # def __init__(self, x): # self.val = x # self.next = None class Solution(object): def deleteDuplicates原创 2017-05-05 20:33:55 · 228 阅读 · 0 评论 -
海量数据之top排序
数据库一种原创 2016-08-30 20:41:28 · 384 阅读 · 0 评论 -
快排实现
继续mark原创 2016-08-30 20:43:11 · 505 阅读 · 0 评论 -
深度优先搜索DFS(depth first search),拓扑排序
理解中。原创 2016-04-08 15:34:03 · 912 阅读 · 0 评论 -
leetcode--Letter Combinations of a Phone Number
class Solution(object): def letterCombinations(self, digits): """ :type digits: str :rtype: List[str] """ if ''==digits: return []转载 2017-04-11 19:09:41 · 402 阅读 · 0 评论 -
算法链表合并
http://www.cnblogs.com/qieerbushejinshikelou/p/3917302.html https://segmentfault.com/a/1190000003718892 https://leetcode.com/problemset/algorithms/原创 2017-04-14 15:33:29 · 665 阅读 · 0 评论 -
链表两两交换节点
过程: 1.给节点加一个头节点,方便后面操作 2.将链表的一部分撕下 3.将撕下的部分再撕一部分给链表 4.将链表的全部撕下给临时的 5.将临时的全部给链表 6.移动链表指针位置继续下一波 撕补两次原创 2017-04-14 18:17:06 · 704 阅读 · 0 评论 -
leetcode-pow(x,n)
1.python自带方法实现:pow(x,n) 2.python自带的幂运算底层实现:x**n 在python中*n表示连续拼接几次,在这里就直接表示连续乘n次 3.减少循环次数:用递归方式,要考虑几点:(1)n=0的时候;(2)n为偶数的时候,循环次数减少一半;(3)n为奇数的时候,循环次数为(n-1)的一半加1次 class Solution(object): def myP原创 2017-04-18 16:59:31 · 258 阅读 · 0 评论 -
leetcode167Two Sum II - Input array is sorted
这个算法易于理解但是效果不是很好 class Solution(object): def twoSum(self, numbers, target): """ :type numbers: List[int] :type target: int :rtype: List[int] """原创 2017-05-11 14:23:35 · 215 阅读 · 0 评论 -
leetcode154Find Minimum in Rotated Sorted Array II
class Solution(object): def findMin(self, nums): """ :type nums: List[int] :rtype: int """ l,r=0,len(nums)-1 while l=nums[r]: mi原创 2017-05-11 12:53:46 · 216 阅读 · 0 评论 -
编程之美
该mark的还是要mark的原创 2016-08-30 20:37:46 · 237 阅读 · 0 评论 -
求数列和
import java.util.Scanner; /**求数列的和 (编程题须知)(参考答案) Time Limit: 2000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Problem Description: 数列的定义如下: 数列的第一项为n,以后各项为前一项的平方根,求数列的前m项的和。 输入 输入数原创 2016-08-15 15:50:56 · 861 阅读 · 0 评论 -
IntegerToEnglishWord
public class Solution { public String numberToWords(int num) { if(num==0){ return "Zero"; } int BillionString=num/1000000000; int MillionString=num%1000000000/1000000; int转载 2016-07-06 14:51:57 · 279 阅读 · 0 评论 -
lettcode 37 Sudoku Solver
public class Solution { public void solveSudoku(char[][] board) { if(board == null || board.length == 0) return; solve(board); } public boolean solv原创 2017-05-03 16:58:35 · 243 阅读 · 0 评论