摘要:
#lang racket(define (length items) (if (null? items) 0 (+ 1 (length (cdr items)))))(define (element-of-set? x set) (cond ((null? set) fals... 阅读全文
摘要:
class Graph: def __init__(self): self.V = []class Vertex: def __init__(self, x): self.key = x self.color = 'white' s... 阅读全文
摘要:
class Graph: def __init__(self): self.V = []class Vertex: def __init__(self, x): self.key = x self.color = 'white' s... 阅读全文
摘要:
class Graph: def __init__(self): self.V = []class Vertex: def __init__(self, x): self.key = x self.color = 'white' s... 阅读全文
摘要:
直接寻址方式:class HashTable: def __init__(self, length): self.T = [None for i in range(length)]class Data: def __init__(self, key, satelite_da... 阅读全文
摘要:
class Graph: def __init__(self): self.V = []class Vertex: def __init__(self, x): self.key = x self.color = 'white' s... 阅读全文
摘要:
class Graph: def __init__(self): self.V = [] self.w = {}class Vertex: def __init__(self, x): self.key = x self.color... 阅读全文
摘要:
class RBTree: def __init__(self): self.nil = RBTreeNode(0) self.root = self.nilclass RBTreeNode: def __init__(self, x): sel... 阅读全文
摘要:
《算法导论》第三版的BST(二叉查找树)的实现:class Tree: def __init__(self): self.root = None# Definition for a binary tree nodeclass TreeNode: def __init__(... 阅读全文
摘要:
原题地址:https://oj.leetcode.com/problems/min-stack/解题思路:开辟两个栈,一个栈是普通的栈,一个栈用来维护最小值的队列。代码:class MinStack: # @param x, an integer def __init__(self): ... 阅读全文
摘要:
原题地址:https://oj.leetcode.com/problems/find-minimum-in-rotated-sorted-array-ii/解题思路:这道题和上一道题的区别是,数组中可能有相同的数。那么,分下列几种情况:代码:class Solution: # @param n... 阅读全文
摘要:
原题地址:https://oj.leetcode.com/problems/find-minimum-in-rotated-sorted-array/解题思路:话说leetcode上面的二分查找题目真的不少啊。下图是这道题的数组的两种情况,分别去处理就可以了。class Solution: #... 阅读全文
摘要:
原题地址:https://oj.leetcode.com/problems/maximum-product-subarray/解题思路:主要需要考虑负负得正这种情况,比如之前的最小值是一个负数,再乘以一个负数就有可能成为一个很大的正数。代码:class Solution: # @param A... 阅读全文
摘要:
缘起:计算机技术在未来将会很重要,所以想业余做一些培训的事情,以前在公司也做过培训编程的事情,有这方面的经验。而数据结构与算法的重要性不言而喻了。编程语言选用python,上手速度快,学会以后能迅速开始学习数据结构与算法。数据结构与算法的教材选用《算法导论》。习题选自leetcode。不教很变态的算... 阅读全文
摘要:
import sysclass mergesort(): def merge_sort(self, A, p, r): if p < r: q = (p + r) / 2 self.merge_sort(A, p, q) ... 阅读全文