数据结构之递归
摘要:编程实现斐波那契数列求值f(n)=f(n-1)+f(n-2) 编程实现求阶乘n! 编程实现一组数据集合的全排列 编程实现斐波那契数列求值f(n)=f(n-1)+f(n-2) int GetNum(int N){ if(N>2) { return GetNum(N-1)+GetNum(N-2); }
阅读全文
posted @
2020-07-19 10:46
滚雪球效应
阅读(193)
推荐(0)
数据结构之栈
摘要:栈 用数组实现一个顺序栈 用链表实现一个链式栈 编程模拟实现一个浏览器的前进、后退功能 用数组实现一个顺序栈 class Stack(object): def __init__(self): self.stack=[] def push(self,item): self.stack.append(i
阅读全文
posted @
2020-07-19 10:20
滚雪球效应
阅读(308)
推荐(0)
剑指03从尾到头打印链表
摘要:题目描述 输入一个链表,按链表从尾到头的顺序返回一个ArrayList。 栈思路: /*** struct ListNode {* int val;* struct ListNode *next;* ListNode(int x) :* val(x), next(NULL) {* }* };*/cl
阅读全文
posted @
2020-07-19 07:55
滚雪球效应
阅读(154)
推荐(0)
2 数据库索引
摘要:2 数据库索引 推荐: http://tech.meituan.com/mysql-index.html MySQL索引背后的数据结构及算法原理 聚集索引,非聚集索引,B-Tree,B+Tree,最左前缀原理
阅读全文
posted @
2020-07-18 16:45
滚雪球效应
阅读(123)
推荐(0)
数据结构之红黑树
摘要:红黑树与AVL的比较: AVL是严格平衡树,因此在增加或者删除节点的时候,根据不同情况,旋转的次数比红黑树要多; 红黑是用非严格的平衡来换取增删节点时候旋转次数的降低; 所以简单说,如果你的应用中,搜索的次数远远大于插入和删除,那么选择AVL,如果搜索,插入删除次数几乎差不多,应该选择RB。 二叉查
阅读全文
posted @
2020-07-18 16:39
滚雪球效应
阅读(229)
推荐(0)
链表
摘要:实现单链表、循环链表、双向链表,支持增删操作 实现单链表反转 实现两个有序的链表合并为一个有序链表 实现求链表的中间结点 实现单链表、循环链表、双向链表,支持增删 循环链表的操作和单链表基本一致,差别仅在于算法中的循环条件不是L或L->为空,而是它们是否等于头指针,因为当循环到头指针,说明链表已经完
阅读全文
posted @
2020-07-18 09:28
滚雪球效应
阅读(139)
推荐(0)
剑指02替换空格
摘要:题目描述 请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 # -*- coding:utf-8 -*-class Solution: # s 源字符串 def replaceSpace(s
阅读全文
posted @
2020-07-18 07:23
滚雪球效应
阅读(111)
推荐(0)
数据结构与算法之数组
摘要:数组 实现一个支持动态扩容的数组 实现一个大小固定的有序数组,支持动态增删改操作 实现两个有序数组合并为一个有序数组 总结:数组扩容优先考虑使用Array的静态方法Resize,其次考虑把一个扩容的、临时的数组赋值给原数组。 一、数组1.实现一个支持动态扩容的数组class Array(): def
阅读全文
posted @
2020-07-17 10:30
滚雪球效应
阅读(187)
推荐(0)
剑指01二维数组中的查找
摘要:题目描述 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
阅读全文
posted @
2020-07-17 09:48
滚雪球效应
阅读(83)
推荐(0)