算法研究
勇哥520
一路前行,马不停蹄
展开
-
快速分类递归算法改写成迭代算法
快速分类递归算法改写成迭代算法/*将data[low, high]进行快速分类的迭代算法(WIN-TC1.9.1k中文DOS环境调试通过)*/#include "stdio.h"#include "conio.h"#define n 8void output(int *data){ int i; printf("数组中的元素为:/n"); for(i=0;i printf("%d/n",原创 2006-04-01 22:29:00 · 1463 阅读 · 0 评论 -
选首领
/*选首领(此程序在WIN-TC下通过)*/#include#includetypedef struct node{ int code; struct node *next;}node,*linklist;linklist create_list1(int n) /*尾插法创建单循环链表*/{ int i; linklist head,p,q; head=(node *)malloc原创 2006-04-01 22:19:00 · 1149 阅读 · 0 评论 -
树结构表示下集合的合并与元素的查找
/* 树结构表示下集合的合并与元素的查找(此程序在WIN-TC1.9.1版下调试通过)*/#include "stdio.h"#include "conio.h"typedef struct{ int data; int tag; /*根节点为负的整数,表示该集合的基数的负值,否则为父节点索引指针 */}NODE,*set;set s1[1],s2[1]; /*定义二个集合原创 2006-04-01 22:25:00 · 1281 阅读 · 0 评论 -
多段图问题的动态规划算法设计与实现
#include "stdio.h"#include "conio.h" #define n 6 /*图的顶点数*/#define k 4 /*图的段数*/#define MAX 1000typedef int NodeNumber; /*节点编号*/typedef int CostType; /*成本值类型*/CostType cost[n][n];NodeNumber path原创 2006-04-21 18:24:00 · 5664 阅读 · 0 评论 -
Kruskal算法的设计与实现
[功能模块]/* Kruskal算法的设计与实现 (WIN-TC调试通过)*/#include "stdio.h"#include "conio.h"#define MAX 30typedef struct{ int v1,v2; /*每条边的两个顶点*/ int weight; /*边的权值*/}EDGE;typedef struct { i原创 2006-04-21 18:23:00 · 1818 阅读 · 0 评论 -
二元树检索与周游算法设计与实现
[功能模块]//二元树检索与周游算法的实现(VC++6.0调试通过)#include #define n 11 //0号结点不用typedef struct Node{int num; // 节点编号 struct Node *lch;struct Node *rch;}node,*BinTree; struct Neighborhood原创 2006-05-06 17:40:00 · 1630 阅读 · 0 评论 -
百度之星程序设计大赛试题(第一题解答)
百度之星程序设计大赛试题第一题(共四题100分):连续正整数(10分) 题目描述:一个正整数有可能可以被表示为n(n>=2)个连续正整数之和,如: 15=1+2+3+4+5 15=4+5+6 15=7+8 请编写程序,根据输入的任何一个正整数,找出符合这种要求的所有连续正整数序列。 输入数据:一个正整数,以命令行参数的形式提供给程序原创 2006-05-19 23:33:00 · 2451 阅读 · 3 评论 -
洗牌问题解答
洗牌问题 设2n张牌分别标记为1, 2, ..., n, n+1, ..., 2n,初始时这2n张牌按其标号从小到大排列。经一次洗牌后,原来的排列顺序变成n+1, 1, n+2, 2, ..., 2n, n。即前n张牌被放到偶数位置2, 4, ..., 2n,而后n张牌被放到奇数位置1, 3, ..., 2n-1。可以证明对于任何一个自然数n,经过若干次洗牌后可恢复初始状态。现在你的的原创 2006-05-23 17:33:00 · 1994 阅读 · 1 评论