随机化快速排序 快速排序是一种高效的排序方法,但是如果我们的输入数组是排好序的一个数组,快速排序的运行时间就会变成O(n^2)。虽然这种情况很少会出现,但我们还是应该避免。 算法导论书籍中的修改方法:在排序方法中随机化选…
分类:未分类
求两个正整数均值(防溢出)
两个整数平均数(防溢出,向下取整) 已知两个整数a、b,a和b的值均没有出现溢出,而a + b有可能出现溢出,例如在归并排序中,通过mid = (low + high)/2求中位值,就可能整数溢出问题。现在需要在防止溢出…
堆排序
转自:http://blog.csdn.net/jiqiren007/article/details/5972735 对于堆排序来说,首先需要做的是要建堆,建堆是一个不断调整堆的过程,能够在线性时间内完成。 堆排序的过程…
架构师需要了解的Paxos原理、历程及实战
编者按:高可用架构分享及传播在架构领域具有典型意义的文章,本文由李凯分享。转载请注明来自高可用架构公众号「ArchNotes」。 李凯,目前在美团云计算部担任高级技术专家,带领存储团队。2007 年加入百度从事分布式平台…
caffe问题汇总
一、prototxt文件中使用了”\”会怎样 PS:一般建议使用”/”即可,否则要”\\”转义。 1、Error parsing text-form…
1-1统计数字问题
问题描述: 一本书的页码从自然数1开始计数,直到自然数n。书的页码按照通常的习惯编排,每个页码都不包含多余的前导数字0。例如,第6页用数字6表示,而不是06或006等。数字计数问题要求对给定书的总页码n,计算出书的全部页…
2-1 众数问题 算法
给定含有n个元素的多重集合s,每个元素在s中出现的次数称为该元素的重数,多重集s中重数最大 的元素称为众数,给定多重集合s,求s中的众数集重数。 /*2-1众数问题*/ #include <iostream>…
归并排序
#include<stdio.h> int a[10000], b[10000]; void mergearray(int a[], int first, int mid, int last, int tem…
回溯法
概念:回溯法就是运用深度优先的方法,从解空间树(或者是图)的根节点开始遍历,搜索到某一个节点的时候判断一下该节点是否肯定不包含在问题的解当中,如果肯定不包含那么就跳过以该节点为根的子树,逐层回溯到该节点的父节点继续进行深…
有限状态机的两种写法
看过类似的文章,加上自己的理解,记录一下。 假设状态机的状态转换由下表所示: 状态转换表 当前状态 State0 State1 State2 事件 action0/state1 action1/state2…
算法笔记之进制转换
这是我在一本书上看到的,觉得这样写很简洁,就拿来和大家分享一下~~ 首先讲讲怎样将十进制转换为任意进制: #include<iostream> using namespace std; int main() …
全排列算法
public class AllSort { public static void main(String[] args) { char buf[] = { 'a', 'b', 'c', 'd', 'e' }; perm…