ACM 算法
XD122
每天 进步 一点点
展开
-
最长回文字串
回文的含义:正着看和倒着看相同,如abba,yyxyy,原创 2014-04-21 19:45:24 · 787 阅读 · 0 评论 -
最短路问题
最短路问题原创 2014-11-01 18:57:51 · 1031 阅读 · 0 评论 -
位运算
位运算 基础知识原创 2014-10-31 11:12:40 · 782 阅读 · 0 评论 -
数据结构--堆
数据结构,ACM 算法,C++基础原创 2014-10-31 17:18:04 · 744 阅读 · 0 评论 -
最长上升子串
最长上升子串 nlogn复杂度原创 2014-10-31 16:34:34 · 2523 阅读 · 0 评论 -
折线分割平面
折线分割平面最大值原创 2014-11-03 12:38:03 · 1010 阅读 · 0 评论 -
KMP 算法
#include #include #include using namespace std;const int MAX = 100;int nextVal[MAX];void get_next(char t[]){ int len = strlen(t); int i=1; int j=0; nextVal[1]=0; while(i < l原创 2015-03-30 19:59:21 · 707 阅读 · 0 评论 -
**360 笔试 登山者行走步数
360 笔试 登山者的步数 分析代码如下:#include <iostream>#include <cstdlib>#include <cstdio>#include <algorithm>#include <cstring>using namespace std;const int n = 100;typedef struct Mountains{ int begin;原创 2015-05-14 12:08:12 · 780 阅读 · 0 评论 -
面试题:最大的子数组之和,和最大子数组的始末位置
给出一个数组,求出最大子数组的和以及始末位置。 直接给出代码解释:int sub_array(int *array,int n){ int max2 = -INF; int sum = 0; int cur = 0; int count2 = 0; int flag; int _end; /*时间复杂度:o(n) 空间复杂度:o(1) */原创 2015-06-16 19:17:52 · 1052 阅读 · 0 评论 -
最小生成树
最小生成树 Prim kruskal 并查集原创 2014-11-01 20:26:05 · 972 阅读 · 0 评论 -
二叉搜索树 并查集
数据结构 BST 并查集原创 2014-10-31 19:50:35 · 1305 阅读 · 0 评论 -
背包问题
dp 背包问题原创 2014-10-31 15:36:02 · 671 阅读 · 0 评论 -
阶乘的精确值 大数据存放
对于不超过1000的数,用于计算其的阶乘原创 2014-04-21 19:08:11 · 764 阅读 · 0 评论 -
因子与阶乘
问题描述:输入正整数n(《n)原创 2014-04-21 20:50:19 · 721 阅读 · 0 评论 -
动态规划 以及相应的实例
dp算法 最长公共子串 数字三角形原创 2014-05-26 19:42:54 · 1037 阅读 · 0 评论 -
矩阵快速幂 斐波那契数列
欧拉公式:原创 2014-07-22 18:18:31 · 709 阅读 · 0 评论 -
排序算法 快排 堆排 选择 插入 希尔 归并
排序算法 小结原创 2014-08-11 11:00:16 · 1030 阅读 · 0 评论 -
今天星期几
今天星期几:对于给定的日期,求出今天是星期几,从元年1年1月1日起。#include #include using namespace std;//对于给定的日期,判断是星期几void week(int y,int m,int d){ //e代表着 从今年的1月1日到目前的天数 int t,e; switch(m) { case 1:原创 2014-08-15 18:51:55 · 1445 阅读 · 0 评论 -
数论基础 辗转相除 扩展欧几里德
数论基础 欧几里得 扩展欧几里得 模运算原创 2014-10-28 14:10:34 · 851 阅读 · 0 评论 -
埃氏筛法之素数
埃氏筛法 素数原创 2014-10-28 18:41:50 · 1440 阅读 · 0 评论 -
求数组的全排列
给定一个数组,求出全排列的情形? 算法描述: /** — 给定数组 3 4 6 9 8 7 5 2 1 如何求出紧挨着的下一个排列? step1:从后面扫描,找到第一个下降的数(6),并记录; step2:依然从后面扫描,找到第一个大于step1(6)的数7,并记录; step3:交换step1(6)、step2(7);=》3 4 7 9 8 6原创 2015-06-16 19:28:47 · 978 阅读 · 0 评论