动态规划 我理解的动态规划就是,根据一定的初始状态,通过动态转移方程最终得到最优解的一种方法。所以最重要的就是明确动态转移方程以及初始状态。 poj上最经典的动态规划题目就是1088滑雪了,但是它还算是有点难度的。所以我…
分类:算法
螺旋数组
螺旋数组,是将N*N数组如下设置 3*3 1 2 3 8 9 4 7 6 5 4*4 1 2 3 4 12 13 14 5 11 16 15 6 10 9 8 7 5*5 1 2 3 4 5 16 17 18 19 6 …
再来两道华为字符串上机题目
1、输入一个字符串,删除重复前面的字符,其余字符按原样顺序输出. * 例如: * 输入:input: “acbdfdffZZet”; * 输出:output:&…
2012华为校招上机一道----字符串分离
题目描述: 通过键盘输入任意一个字符串序列,字符串可能包含多个子串,子串以空 格分割。请编写一个程序,自动分离出各个子串,并使用’,’将其分离,并 且在最后也补充一个’,’…
经典冒泡排序及其优化
经典排序算法 – 冒泡排序Bubble sort 原理是临近的数字两两进行比较,按照从小到大或者从大到小的顺序进行交换,这样一趟过去后,最大或最小的数字被交换到了最后一位,然后再从头开始进行两两比较交换,直到…
C++ STL
vector 头文件: #include<vector> 定义: vector<char>src; vector<int>num; 使用: 向普通数组那样通过[ ] 来使用。例如 nu…
1. Two Sum java
题目描述: Given an array of integers, return indices of the two numbers such that they add up to a speci…
leetcode第一刷_Word Ladder II
这道题很难。 之前的题目我提到过一次用两个vector来做层序遍历的,就是因为这道题。要想最后恢复出单词变换的路径,就需要事先保存,根据dp中路径恢复的启发,保存的应该是一个单词的前一个变换节点。可能有很多个单词都能变换…
leetcode第一刷_Median of Two Sorted Arrays
这道题是我最初刷的那20多道之一,但一直没有过,被各种各样的情况折磨死了,直到把所有其他的题都写完,回来看大神对这道题是怎么处理的时候,才惊叹算法的奇妙。再次验证了我的想法,如果要处理各种各样的特殊情况,一定是算法本身有…
算法问题思路记录
1.闰年计算:能被4整除,但不能被100整除;能被100整除,又能被400整除,除了这个之外都是非闰年; 2.素数:又称为质数,指在一个大于1的自然数中,除了1和此整数自身之外,不能被其它自然数整除的数; 3.已知三角形…
一致性Hash算法
转载自:http://www.iteye.com/topic/684087
白话经典算法系列之二 直接插入排序的三种实现
直接插入排序(Insertion Sort)的基本思想是:每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的子序列中的适当位置,直到全部记录插入完成为止。 设数组为a[0…n-1]。 1.&nbs…