算法
Cannel_2020
找寻目标,努力奋斗。
展开
-
算法入门之队列的链式表示
和线性类似,队列也可以有俩种存储表示。一个链队列需要都两个分别指向队头和队尾的指针(分别称为头指针和尾指针)才能唯一确定。为了操作方便,除了以上两个指针外,我们还为对列添加一个头结点。初始化是头指针和尾指针都指向头结点,因此,当头指针和尾指针均指向头结点时,此队列为空。1. 定义存储结构:typedef struct QNode{ QElemType data; //存放的数据,原创 2011-10-29 17:07:26 · 1631 阅读 · 0 评论 -
最大连续子序列 1231
解法一:记录下标#include #includeusing namespace std; #define N 10001int a[N]; int main(){ int n,max,start,end; while(cin>>n && n) { max=0x80000000; int sum=0;原创 2012-05-31 23:56:03 · 1599 阅读 · 2 评论 -
搬寝室 1421
#include #include using namespace std;#define Min(a,b) (a < b ? a : b)#define INF 2100000000int dp[2001][1001];//第一个下标(2001)是指int main() { int n;//物品的个数 int k;//取多少对 int a[2001];//数组a先用来各个原创 2012-05-31 23:54:43 · 1261 阅读 · 1 评论 -
回溯法求解数独(C++实现)
回溯法(探索与回溯法)是一种选优搜索法,按选优条件向前搜索,以达到目标。但当探索到某一步时,发现原先选择并不优或达不到目标,就退回一步重新选择,这种走不通就退回再走的技术为回溯法,而满足回溯条件的某个状态的点称为“回溯点”。#include #include using namespace std;int map[9][9];bool isPlace(int count){原创 2012-04-21 00:57:12 · 17796 阅读 · 2 评论 -
迷宫最短路径的C++实现(队列:广度优先)
#include#include#includeusing namespace std;struct point{ int x; int y; point *last;//上一步的坐标};int main(){ while(1){ int row, col, i, j; cout<<"请输入迷宫图的行数和列数:"; cin>>row>>col; int **a原创 2012-04-24 22:46:55 · 13867 阅读 · 3 评论 -
八(N)皇后问题的C++实现
简单说:任意两个皇后(国际象棋)都不能处于同一行、同一列或同一斜线上。C++代码实现如下:#include using namespace std;//isPlace()用于判断会不会跟之前已放置的皇后互相攻击,int count = 0;bool isPlace(int *a, int k){ for(int i = 0; i < k; ++i){ //a[i] ==原创 2012-03-22 12:10:19 · 2573 阅读 · 0 评论 -
排序的之插入排序
一、插入排序的主要分类:1、直接插入排序;2、折半插入排序;3、2-路插入排序;4、希尔排序(缩小增量排序)。二、直接插入排序(简便,容易实现):1、排序过程:整个排序过程为n-1趟插入,即先将序列中第1个元素看成是一个有序子序列,然后从第2个元素开始,逐个进行插入,直至整个序列有序。 2、算法实现:void InsertSort(int a[], int原创 2011-11-19 19:40:53 · 1357 阅读 · 1 评论 -
算法入门之串的顺序存储表示
串,即字符串。计算机上的非数值处理的对象基本上是字符串数据。但是,由于现在我们使用的计算机硬件结构主要是反映数值计算的需要的,在处理字符串数据时比处理整数和浮点数要复杂的多。而且,对于不同类型程序,所处理的字符串具有不同的特点,要有效地实现字符串的处理,就必须根据具体情况使用合适的存储结构。串的存储表示主要有:1.定长顺序存储表示; 2. 堆分配存储表示; 3.块链存储表示。 以原创 2011-11-10 16:52:43 · 1703 阅读 · 0 评论 -
Google搜索引擎的奥秘
1、背景和问题据统计超过80%的用户靠搜索引擎获取信息网站排名是网络搜索引擎的核心目前Google数据库存储上百亿网页信息, 每天提供查询服务达到3亿多次2、google查询过程示意图3、Google搜索的核心算法 PageRank是 Google 用于评价一个网页的重要性的一种方法. 通过该方法, Google 将各个网站进行排名. 用户进行相关原创 2012-06-18 00:32:54 · 5149 阅读 · 7 评论