
Data Structure & Algorithm
njyzf
这个作者很懒,什么都没留下…
展开
-
0-1背包
0/1背包问题 1. 问题描述 给定一个载重量为m,n个物品,其重量为wi,价值为vi,1,要求:把物品装入背包,并使包内物品价值最大转载 2012-10-21 10:46:09 · 397 阅读 · 0 评论 -
动态查找表之二叉排序树
二叉排序树(Binary Sort Tree)或者是一棵空树;或者是具有如下性质的二叉树:1)若左子树不空,则左子树上所有节点的值均小于它的根节点的值 2)若它的右子树不空,则右子树上所有节点的值均大于它的根节点的值 3)它的左右子树也分别为二叉排序树。 二叉排序树的查找 int SearchBST(BiTree T,KeyType key, BiTree f,BiTree &p)原创 2013-04-18 21:59:22 · 1860 阅读 · 0 评论 -
最大网络流算法
1、网络流基础 2、FF算法实现 3、 ff算法c++实现 1.流网络G=(V,E)是一个有向图,其中每条边(u,v)∈E均有一个非负容量c(u,v)>=0。如果(u,v)不属于E,则假定c(u,v)=0。流网络中有两个特别的顶点:源点s和汇点t。下图展示了一个流网络的实例(其中斜线左边的数字表示实际边上的流,右边的数字表示边的最大容量):转载 2013-03-23 22:20:07 · 6140 阅读 · 0 评论 -
一个简单的计算器模拟程序-2011腾讯笔试填空题
【说明】 本程序是一个简单计算器模拟程序。对任意给定的正确四则运算表达式,程序计算其结果值并输出。表达式中运算分量为无正负号的整数,运算符为+ - * / ,圆括号按常规配对,表达式以字符“=”结束。 函数getch()为获取表达式的一个合法字符,并将字符存入变量curch;函数指针数组func[]是为了统一加减乘除计算而设置的。(红色为需要补充的部分) #include原创 2013-03-25 15:04:40 · 1559 阅读 · 0 评论 -
约瑟夫环问题
第18题: 题目:n个数字(0,1,…,n-1)形成一个圆圈,从数字0开始, 每次从这个圆圈中删除第m个数字(第一个为当前数字本身,第二个为当前数字的下一个数字)。 当一个数字删除后,从被删除数字的下一个继续删除第m个数字。 求出在这个圆圈中剩下的最后一个数字。 #include using namespace std; int joseph(int n,int m) { int原创 2013-03-02 20:34:21 · 572 阅读 · 0 评论 -
july微软一百题系列之12
第12题 题目:求1+2+…+n, 要求不能使用乘除法、for、while、if、else、switch、case等关键字 以及条件判断语句(A?B:C)。 //July、2010/10/19 ----------------- 循环只是让相同的代码执行n遍而已,我们完全可以不用for和while达到这个效果。 比如定义一个类,我们new一含有n个这种类型元素的数组, 那么该类的构转载 2013-02-26 21:22:54 · 480 阅读 · 0 评论 -
kmp算法
http://www.matrix67.com/blog/archives/115 如果机房马上要关门了,或者你急着要和MM约会,请直接跳到第六个自然段。 我们这里说的KMP不是拿来放电影的(虽然我很喜欢这个软件),而是一种算法。KMP算法是拿来处理字符串匹配的。换句话说,给你两个字符串,你需要回答,B串是否是A串的子串(A串是否包含B串)。比如,字符串A="I'm mat转载 2012-09-26 11:18:24 · 396 阅读 · 0 评论 -
最坏情况下为O(N)的线性时间选择
【题目】:给定线性序集中n个元素和一个整数k,1≤k≤n,要求找出这n个元素中第k小的元素,(这里给定的线性集是无序的) 【思路】:如果能在线性时间内找到一个划分基准,使得按这个基准所划分出的2个子数组的长度都至少为原数组长度的ε倍(0 例如:若ε=9/10,算法递归调用所产生的子数组的长度至少缩短1/10。所以,在最坏情况下,算法所需的计算时间T(n)满足递归式T(n)≤T(9n/10)转载 2013-02-21 21:33:48 · 2067 阅读 · 1 评论 -
常用的7中排序算法源码
#include #include int a[]={55,60,40,10,80,65,15,5,75}; int n=9; void Swap(int &x,int& y) { int t=x; x=y; y=t; } void Print(int a[],int n) { for(int i=0;i printf("%d ",a[i]); print原创 2012-10-09 16:49:42 · 691 阅读 · 0 评论 -
poj-1611
http://poj.org/problem?id=1611 The Suspects Time Limit: 1000MS Memory Limit: 20000K Total Submissions: 16697 Accepted: 8020 Description Severe acute respiratory原创 2013-01-30 18:26:53 · 563 阅读 · 0 评论 -
poj-1002
http://poj.org/problem?id=1002 487-3279 Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 204325 Accepted: 35622 Description Businesses like to have m原创 2013-01-30 17:15:29 · 796 阅读 · 0 评论 -
趋势科技一道编程题
题目:编写一个函数int search(char *text),text为输入的字符串,从字符串中找出一个最长的 不含重复字符的子字符串,例如“axdbx”,返回4,子字符串为“axdb”,而“axdbxce”,返回5,子字 符串为“dbxce”。 #include #include using namespace std; int search(char *text原创 2013-01-27 14:46:04 · 1561 阅读 · 2 评论 -
2012 小米春季招聘的两个编程题
一、设计一个类MList,它维护一个整数列表(初始为空),并提供了三个方法: 1、把一个整数添加到列表末尾 2、把当前列表翻转 3、顺序输出当前列表中的所有元素 请完善该类定义中的...部分(算法效率越高越好) class MList { ... void add(int value){...} void reverse(){...} void print(){..原创 2012-11-22 09:53:06 · 430 阅读 · 0 评论 -
皇后问题
1)8皇后问题: #include using std::cout; using std::endl; #define my_abs(x) ((x)>=0?(x):(-(x))) const int n=8; void output(int a[],int n) { static int count=1; cout<<"this is the "<<count<<"th answer"<<原创 2012-11-21 09:48:09 · 550 阅读 · 0 评论 -
merge空间复杂度O(1)
// //问题: //数组al[0,mid-1] 和 al[mid,num-1],都分别有序。将其merge成有序数组al[0,num-1],要求空间复杂度O(1) // // #include using std::cout; using std::cin; using std::endl; void swap(int &a,int &b) { int t=a; a=原创 2012-11-20 11:27:00 · 1299 阅读 · 1 评论 -
一道俩个字符串是否包含的问题
题目描述:假设这有一个各种字母组成的字符串,假设这还有另外一个字符串,而且这个字符串里的字母数相对少一些。从算法是讲,什么方法能最快的查出所有小字符串里的字母在大字符串里都有?比如,如果是下面两个字符串:String 1: ABCDEFGHLMNOPQRSString 2: DCGSRQPOM答案是true,所有在string2里的字母string1也都有。如果是下面两个字符串: String 1原创 2012-11-18 13:38:38 · 1094 阅读 · 0 评论 -
哈希表(散列表)
哈希表的构造方法 1、直接定址法 例如:有一个从1到100岁的人口数字统计表,其中,年龄作为关键字,哈希函数取关键字自身。 2、数字分析法 有学生的生日数据如下: 年.月.日 75.10.03 75.11.23 76.03.02 76.07.12 75.04.21 76.02.15 ..转载 2012-10-21 11:21:37 · 605 阅读 · 0 评论 -
Kmeans算法java代码
package com.nju.yzf; import java.io.BufferedReader; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; im原创 2014-03-25 15:46:52 · 17884 阅读 · 20 评论