摘要: Description在主串S中,从位置start开始查找是否存在模式子串T,如果存在,则返回主串中的位置,如果不存在,则返回0。Input第一行:测试次数,假设为n,即共n对测试样本。第二、三行为第一组测试数据,其中第二行为主串样本,第三行为模式子串样本;第四、五行为第二组测试数据,其中第四行为主串样本,第五行为模式子串样本;以此类推,共有n对测试样本。Output共有n行,每一行是一个测试结果,有2种结果:匹配时主串位置;匹配不成功时为0。Sample Input3 qwertyuiop tyu zxcvbnm ccc aaaabababac abac Sample Output5 0 8 阅读全文
posted @ 2012-10-16 15:21 Levi_随云 阅读(185) 评论(0) 推荐(0) 编辑
摘要: (一). 实验目的编译器处理源程序文件的过程中,集合、链表、栈是经常出现的数据结构。与《数据结构》课程关注集合、线性表的编程实现不同,本实验关注它们的使用。在Java语言中,集合和线性表分别就是Java工具类Util包中的Set和List两个接口。特别的,本实验关注HashSet、ArrayList(或Vector)和Stack(它们分别是集合、链表和栈的实现类)的使用,为后续实验做好准备。(二). 预备知识1. 集合和线性表的基本操作集合和线性表(链表和栈)的基本操作是《数据结构》课程的基础知识,这里不一一进行介绍。2. Collection在Java中,集合容器(Collection)是一 阅读全文
posted @ 2012-10-16 10:32 Levi_随云 阅读(539) 评论(0) 推荐(0) 编辑
摘要: Description1、问题描述一个算术表达式中包括圆括号、方括号和花括号三种形式的括号编程实现判别表达式中括号是否正确匹配的算法2、算法 顺序扫描算术表达式 若算术表达式扫描完成,此时如果栈空,则正确返回(0);如果栈未空,说明左括号多于右括号,返回(-3) 从算术表达式中取出一个字符,如果是左括号(‘(‘或‘[‘或 ‘{‘),则让该括号进栈(PUSH) 如果是右括号(‘)‘或‘]‘或 ‘}‘):⑴、如果栈为空,则说明右括号多于左括号,返回(-2)⑵、如果栈不为空,则从栈顶弹出(POP)一个括号: 若括号匹配,则转1继续进行判断;否则,说明左右括号配对次序不正确,返回(-1)Input第一 阅读全文
posted @ 2012-10-13 21:25 Levi_随云 阅读(702) 评论(0) 推荐(0) 编辑
摘要: Description对于任意十进制数转换为k进制,包括整数部分和小数部分转换。整数部分采用除k求余法,小数部分采用乘k取整法例如x=19.125,求2进制转换整数部分19,小数部分0.12519 / 2 = 9 … 10.125 * 2 = 0.25 … 09 / 2 = 4 … 10.25 * 2 = 0.5 … 04 / 2 = 2 … 00.5 * 2 = 1 … 12 / 2 = 1 … 01 / 2 = 0 … 1所以整数部分转为 10011,小数部分转为0.001,合起来为10011.001 请用堆栈实现上述数制转换Input第一行输入一个t,表示下面将有t组测试数据。接下... 阅读全文
posted @ 2012-09-19 13:13 Levi_随云 阅读(417) 评论(0) 推荐(0) 编辑
摘要: #include <iostream>#include <string>#include <queue>#include <set>using namespace std;#define MaxLen 100int main(){ set<int> group[MaxLen]; queue<int> subgroupQueue[MaxLen]; queue<queue<int>*> totalQueue; int cases; cin>>cases; for(int i=0;i<c 阅读全文
posted @ 2012-09-19 01:28 Levi_随云 阅读(170) 评论(0) 推荐(0) 编辑
摘要: Description假定两个顺序表的数据已经按照从小到大的顺序排列,实现两个顺序表的合并Input第一行输入n表示顺序表A包含的·n个数据第二行输入n个数据,数据是小于100的正整数第三行输入m表示顺序表B包含的·n个数据第二行输入m个数据,数据是小于100的正整数Output输出合并后的顺序表内的所有数据,数据之间用空格隔开Sample Input311 33 55422 44 66 88Sample Output11 22 33 44 55 66 88 #include <stdio.h> #include <malloc.h> typedef 阅读全文
posted @ 2012-09-18 16:29 Levi_随云 阅读(977) 评论(0) 推荐(0) 编辑
摘要: Description实现顺序表的创建、插入、删除、查找Input第一行输入顺序表的实际长度n第二行输入n个数据第三行输入要插入的新数据和插入位置第四行输入要删除的位置第五行输入要查找的位置Output第一行输出创建后,顺序表内的所有数据,数据之间用空格隔开第二行输出执行插入操作后,顺序表内的所有数据,数据之间用空格隔开第三行输出执行删除操作后,顺序表内的所有数据,数据之间用空格隔开第四行输出指定位置的数据Sample Input611 22 33 44 55 66888 352Sample Output11 22 33 44 55 66 11 22 888 33 44 55 66 11 22 阅读全文
posted @ 2012-09-18 15:19 Levi_随云 阅读(289) 评论(0) 推荐(0) 编辑
摘要: import java.io.*;public class IOlianxi1 { public static void main(String[] args) throws IOException { System.out.println("the path: "+System.getProperty("user.dir")); CreateFile("C:/123.txt"); readFile("C:/AbsPath.txt"); writeFile2("C:/RelPath.txt",& 阅读全文
posted @ 2012-09-18 11:43 Levi_随云 阅读(215) 评论(0) 推荐(0) 编辑
摘要: #include<stdio.h>#include<stdlib.h>#define STACK_SIZE 100 #define overflow -2#define OK 1#define TRUE 1#define FALSE 0typedef char datatype; typedef int Status; typedef struct {datatype *base; datatype *top; int stacksize; } seqstack; void Initial(seqstac... 阅读全文
posted @ 2012-09-12 21:56 Levi_随云 阅读(265) 评论(0) 推荐(0) 编辑
摘要: vi ~/.profile 1 alias ls='ls -G' 2 set convert-meta off 3 set meta-flag on 4 set output-meta on 5 alias cp='cp -i' 6 alias l.='ls -d .* -G' 7 alias ll='ls -l' 8 alias mv='mv -i' 9 alias rm='rm -i' 10 alias l='ll -a'vi ~/.vimrc 1 set nu 2 syntax 阅读全文
posted @ 2012-09-03 01:42 Levi_随云 阅读(220) 评论(0) 推荐(0) 编辑