
Algorithms
幸福的起点_
搬砖ing
展开
-
斐波那契数列及其对数时间算法
斐波那契数列及其对数时间算法前些天做IEEE校内算法赛的时候,遇到了一道关于斐波那契数列的题,要求是对数时间;今天在牛课网上刷leetcode,看到爬楼梯问题,于是在网上搜索了一下,自己参考并总结了下斐波那契数列及其算法。主要参考了知乎这个问题下的回答最高赞回答。 斐波那契数列大家应该都很熟悉:0 1 1 2 3 5 8… ,递推公式如下: f(n)={f(n−1)+f(n−2)if2≤n...原创 2018-05-22 16:55:32 · 1889 阅读 · 0 评论 -
约瑟夫环问题
约瑟夫环问题约瑟夫环问题: 首先,让n个小朋友们围成一个大圈。然后,随机指定一个数m,让编号为0的小朋友开始报数。每次喊到m-1的那个小朋友要出列唱首歌,然后可以在礼品箱中任意的挑选礼物,并且不再回到圈中,从他的下一个小朋友开始,继续0…m-1报数….这样下去….直到剩下最后一个小朋友,可以不用表演,并且拿到牛客名贵的“名侦探柯南”典藏版(名额有限哦!!^_^)。请你试着想下,哪个小朋友会得...原创 2018-05-23 19:37:56 · 373 阅读 · 0 评论 -
常见的排序算法
常见的排序算法包括:冒泡排序、选择排序、插入排序、希尔排序、归并排序、快速排序和堆排序。 排序算法 最好时间 最差时间 平均时间 空间 是否稳定 冒泡排序 O(n) O(n^2) O(n^2) O(1) 稳定 选择排序 O(n^2) O(n^2) O(n^2) O(1) 不稳定 插入排序 O(...原创 2018-07-08 23:10:20 · 184 阅读 · 0 评论 -
C++字符串与C语言中的字符串处理函数
C++字符串与C语言中的字符串处理函数一.C++中的字符串类下面是简单的一种实现:#ifndef STRING_H_INCLUDED#define STRING_H_INCLUDEDclass String{public: String (const char* cstr = 0); String (const String&); St...原创 2018-07-02 22:55:56 · 860 阅读 · 0 评论 -
常见位运算总结
常见位运算总结常见的位运算有六种:and运算,按位与:&有零为零or运算,按位或:|有一位一xor运算,按位异或:^相同为零,不同为一not运算,按位取反:~shl运算,左移:<<shr运算,右移:>>优先级从上往下递减~<<, >>&^|&am原创 2018-07-29 12:34:00 · 521 阅读 · 0 评论 -
并查集算法:Union-Find
并查集算法:Union-Find一.算法简介并查集算法是为了解决一类连通性的问题,连通是一种等价关系,满足自反性,对称性和传递性。 - 自反性:p和p是连通的 - 对称性:假设p和q是连通的,那么q和p也是连通的 - 传递性:假设p和q是连通的,q和r也是连通的,那么可以推出p和r也是连通的从连通性这种等价关系,我们可以将对象划分成等价类,等价类中的任意两个元素都是连通的。...原创 2018-08-03 10:34:36 · 346 阅读 · 0 评论 -
图论小结
一.图论的基本概念有向图(有向边),无向图(无向边),顶点集合,边集合,顶点数(阶),边数;完全图,有向完全图,稀疏图,稠密图,平凡图(只有一个顶点),零图(没有边);顶点的度数,奇点,偶点,最小度,最大度;基本定理:度数之和等于边数的两倍;度序列,可图(有限序列是度序列);Havel-Hakimi定理:判断序列是否可图;二部图(偶图),完全二部图,二部图判定(无奇圈);同构;...原创 2018-09-07 17:18:17 · 343 阅读 · 0 评论