本文出自:http://blog.csdn.net/svitter
题意:两个人从c出发,分别想去a,b旅行,两个城市之间只有一条路,有一个相应的价值。求最小的价值。通行的时候只花费一个价值。
本题目的关键在于优先队列,求出a, b, c到各点的最小价值,然后从中挑选一个点作为分开的点。
dijktra算法时用邻接表存储,因为明显是稀疏图。。还有就是存边的时候记得存双向的边,利用优先...
分类:
其他好文 时间:
2014-04-29 13:33:21
阅读次数:
295
冒泡排序,往两个方向泡,一个往小泡,一个网大泡
#include
#include
#include
void bubble_sort(int *a,int n){
int temp;
for(int i=0;i<n;i++)
for(int j=0;ja[j+1]){
temp=a[j];
a[j]=a[j+1];
...
分类:
其他好文 时间:
2014-04-29 13:28:21
阅读次数:
364
小米面试
我:
一面:
数据结构+算法:
斐波那契数列:非递归-迭代
1MB内存,外存-100W整数,排序,O(1)-位图法
设计模式:
代理模式:OO
C++:虚函数表
二面:
数据结构+算法:
快排
二叉树遍历
设计模式:
单例模式-多线程:
关系数据库的特性
进程和线程的区别
三面:
数据结构+算法:...
分类:
移动开发 时间:
2014-04-29 13:17:19
阅读次数:
606
工作一两年的程序员们也许都会有一种感觉,要完成一个模块,一个功能或是做出一个东西都不难,真正困扰我们的是怎么做好一个东西。
怎么算是做好呢,我觉得一个好的代码,除了有个好的规范,有好的算法,最重要的还是要有很好的可扩展性,面对不断变化的需求,不断增加的功能,
没有好的扩展性的代码,会让你感觉根本无从下手,经常会让你有重头写过的想法。所以一个好的设计很重要,但是很多的时候我们没有办法设计出一个完...
分类:
其他好文 时间:
2014-04-29 13:15:21
阅读次数:
278
希尔排序
希尔排序,有时称为递减增量排序,是在插入排序基础上,把列表拆成几个较小的子表,然后对每个子表使用插入排序的方法。选出子表的方法是希尔排序的关键,它并不是把列表的中相近的元素取出来组成子表,而是使用了一个增量值I,有时也叫做“间隙”,然后每隔一个间隙选中一个元素来组成子表。
这可以从图6中看出来,列表中有9个元素,如果我们使用增量3,就有3个子表,每个子表单独做插入排序。完成之后的...
分类:
编程语言 时间:
2014-04-29 13:15:20
阅读次数:
353