自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(229)
  • 资源 (24)
  • 收藏
  • 关注

原创 用递归算法求完成n阶Hanoi的移动

原题:用递归算法求完成n阶Hanoi的移动。#includeint main(){ void Hanoi(int n,char x,char y,char z); int n; cout<<"请输入圆盘数:"<<endl; cin>>n; Hanoi(n,'A','B','C'); cout<<endl<<endl; return 1;}vo

2013-06-01 21:05:08 1268

原创 求Ackerman函数的值

原题:已知Akerman函数的定义如下:                      {    n+1                 m=0Akm(m,n)=  { akm(m-1,1)          m!=0,n=0                      {akm(m-1,akm(m,n-1))  m!=0,n!=0(1)写出递归算法;           (2)写出非递

2013-06-01 21:03:15 3957

原创 双端堆栈的实现

原题:设有两个栈S1和S2,都采用顺序表示,并且共享一个存储区V[0:MAXSIZE],为尽量利用空间,减少溢出的可能,现采用栈顶相对,迎面增长的方式存储。试设计公用栈基本操作,实现初始化,判空和出栈操作的算法。分析:将两个栈底置在数组V[0:maxsize]的两端,迎面增长,只有当两个栈相遇时才会溢出,另外一个变量tag(=1,2)来表示S1和S2的操作。#include#defin

2013-06-01 20:59:43 1215

原创 用两个栈模拟一个队列的运算

原题:用两个栈模拟一个队列运算的基本思想是用一个栈作为输入,另一个栈作为输出。进队列时,将数据进入到作为输入的栈中。输出时,如果作为输出的栈已空,则从输入栈将已输入到栈中的所有数据输入到输出栈中,然后由输出栈输出数据;如果作为输出的栈不空,则就从输出栈输出数据。显然,只有在输入、输出栈均为空时队列才空。程序如下:#include#include#include#define I

2013-06-01 20:55:59 1515

原创 随机访问表结点

原题:试编写如下功能的定们函数Locate(L,e),设有一个双向链表,每个节点中除有prior,data和next三个域外,还有一个访问频度域freq。在链表被起用后,频度域freq初始化为零,而每当对链表进行一次Locate(L,e)的操作后,被访问的结点(即元素值等于e的结点)中的频度域freq的值便增1,并且调整链表中节点之间的次序,使按访问频度非递增的次序顺序排列,以便使始终保持被频繁访

2013-06-01 20:03:26 1483 1

原创 判断带表头的单向循环链表La是否递增

原题:编程判断带表头的单向循环链表La是否递增。分析:判断链表是否递增由函数IsIncrease()实现,其算法思想:令p指向链表的第一个结点,即指向头结点的后继,如果p所指结点的值比其后继结点的值小,则p前进;如果最终p->next==L(注意此表是单循环链表),则说明表中任意两相临结点中,前一结点的值总小于后一结点的值,即链表是递增的。#include#include#incl

2013-06-01 20:01:38 2133

原创 判断集合La是否是集合Lb的子集

原题:设两个带头结点的链表La、Lb分别表示两个集合,编写算法以判断集合La是否是集合Lb的子集。分析:判断集合La是否是集合Lb的子集由函数IsSubset()实现,其算法思想:遍历La的每个元素,在Lb中查找La元素,查找失败,则表示La不是Lb的子集;如果La中的所有元素都在Lb中,则表示La是Lb的子集。#include#include#include#include

2013-06-01 19:59:50 2466

原创 求出递增链表La、Lb的差集Lc,并同样以递增的方式存储

原题:已知两个带头结点的单链表La和Lb分别表示两个集合,元素值递增有序,设计算法求出La、Lb的差集Lc,并同样以递增的方式存储。(La和Lb的差集:即在La中而不在Lb中的元素的集合)分析:求差集由函数Difference()实现,其算法思想:由于单链表La和Lb是递增有序的,可设置两个指针分别指向两个链表的第一个元素,当La的数据域值小于Lb的数据时,将其复制到Lc;如果数据域值相同,将

2013-06-01 19:57:49 3374

原创 将带头结点的单链表利用原结点空间将其逆置

方法1:就地逆置由函数Reverse()完成,其算法思想:修改指针,设原表中pre为p的前驱,将其修改成pre为p的后继,即p->next=pre,当然这时无法求p原来的后继,所以可以在修改指针前,先用q暂存p原来的后继即可。#include#include#include#include#include#define ARRAYSIZE 20typedef str

2013-06-01 19:53:36 3663

原创 设顺序表 S 中元素递增有序,编写算法删除 S 所有大于 k1 且小于 k2 的元素

删除表中指定上限和下限之间的数据的功能由函数DeleteElem()实现,其算法思想:从表头向后逐个检查数据元素,找到第一个满足删除条件的数据元素;然后再找出满足条件的元素的个数,最后将被元素之后的元素一次性移动到位。#include#include#include#include#define LISTSIZE 50typedef struct SqListNode

2013-06-01 18:24:02 4025

原创 生成随机顺序表,即表中的元素是随机生成的,且从小到大有序

#include#include#include#include#define LISTSIZE 200typedef struct SqListNode{ int *elem;//存储空间基址 int length;//顺序表的当前长度 int listsize;//顺序表的最大长度}SqList;int InitList(SqList &Li

2013-06-01 18:21:28 5265

原创 分解链表,la表中存放字母,lb中存放数字,lc中存放其它字符

原题:设 head 是没有带头结点的单链表中指向第一个节点的指针,节点的数据域存储一个字符,该字符可能是英文字符或数字或其他字符。编写算法构造三个以带头结点的单循环链表,使每个链表中只停含同一类字符(要求用最少的时间和最少的空间)。分析:只要顺序扫描链表 head 中的每个结点,根据节点中所含的字符类型分别插入到不同的单循环链表中即可。#include#include#includ

2013-06-01 18:10:04 1975

原创 两个多项式的加法

原题:用链式存储结构存放一元多项式Pn(x)=p(1) x e(1) + p(2) x e(2) + ... + p(n) x e(n),其中 p(i)是指数为 e(i) 项的非零系数,且满足 0 <= e(1) < e(2) <...< e(n)=n。请设计算法将多项式B=Pn2(x) 加到多项式 A=Pn1(x),同时对算法及链表的节点结构简单注释。要求利用 Pn1(x) 和Pn2(x)的节点

2013-06-01 18:05:33 1187

原创 生成随机的多项式

以下程序能生成形如 (0,0) + (15.7,3) + (141.3,4) + (185.26,5) + (97.34,7) + (106.76,8)  的随机多项式,其中(0, 0) 是固定的项,表示多项式的开始,对运算结果不产生影响.括号中的第一项表示底数,第二项表示指数,如: (a,b) 表示 a  的 b 次方.#include#include#includetype

2013-06-01 18:02:57 2217

原创 用循环链表解约瑟夫问题

原题:用循环链表求解约瑟夫问题,n 个人围成一个圆圈,首先从第 1 个人开始一个一个地顺时针报数,报到第 m 个人,令其出列。然后再从下一个人开始,从 1 顺时针报数,报到第 m 个人,再令其出列,...... ,如此下去,直到圆圈中只剩下一个人为止。此人即为优胜者。//分析:用不带头结点的循环链表来表达约瑟夫最简单, p 首先指向要报数到的第 1 个人所在的结点, pre 指向 p 所指结点

2013-06-01 17:48:34 2053

原创 单循环链表变成双循环链表

以下程序实现把单循环链表变成双循环链表:#include#include#include#include#include#include#define ElemType char#define ARRAYSIZE 20typedef struct LNode{ ElemType data[20]; struct LNode *next,*prio

2013-06-01 00:08:13 2629

原创 以单链表存储的两个集合求交集的算法

原题:设计以单链表存储的两个集合求交集的算法,即设la,lb是两个带头结点的单链表,分别表示两个集合A和B,求它们的交集。方法1:用单链表lc表示集合C,分别将集合la中元素取出,再在lb中查找,如果lb中出现,则将其插入到lc中。void interaction(LinkList la,LinkList lb,LinkList &lc){ LinkList pa,pb,pc;

2013-06-01 00:05:49 10904 1

原创 将两个递增的链表合并成一个递减的链表(相同的元素只留下一个),并要求利用原表结点

原题:已知两个链表A和B,其元素值递增排序,编程将A和B合并成一个递减有序(相同元素只留下一个)的链表C,并要求利用原表节点。分析:该程序是由LNode *MergeList()函数完成题设要求的,该函数的原理:采用插入在表头的方法实现先插入的值小的节点在表尾(相当于被后插入的结点推向表尾),而后插入的值大的结点在表头。此外,该程序的链表都是有头结点的。#include #inclu

2013-05-31 23:49:17 3256

原创 生成结点值互不相同的且递增有序的单链表

ListSort算法的原理:对原串从左到右扫描,每扫描到一个结点,就生成一个新结点,并使新结的数据域值等于当前扫描到的结点的数据域值,然后将新结点按序插入到新的链表中,并释放原结点,然后继续扫描,重复上述操作,直到扫描完原链表为止。此时就生成一个新的有序链表,原链表的内存空间被完全释放。#include#include#include#include#includety

2013-05-31 23:42:51 1385

原创 向头指针为 L的有序单链表(从小到大有序)中插入一个结点,使插入后链表仍然有序

原题:有一个有序单链表(从小到大有序),表头指针为 L ,编写一个函数向该单链表中插入一个元素为 a 的结点,使插入后链表仍然有序。说明:以下程序先自动生成一个从小到大有序链表,然后要求输入插入结点的数据,再用函数int InSnode(LinkList &L)来实现插入操作,该函数为实现插入操作的核心。#include#include#include#includetyp

2013-05-31 23:27:55 13574 2

原创 将数组中的所有元素依次循环右移k个位置

原题:请设计一个时间复杂度为O(n),空间复杂度不超过O(2)的算法,该算法将数组array[0:n-1]中所有元素依次循环右移k个位置。算法思想:以一个元素为起点,用pre_temp记下其值,然后将其右边相距k位的元素与其交换,再移动到下一个k位,继续下去,直到回到起点。注注意回到起点并不一定表示移动结束。显然每交换一次只有一个数据到位,所以程序中用 m 记下交换的次数,当 m=n 时表

2013-05-31 23:21:27 7360

原创 串的模式匹配(基于修正的KMP的匹配算法)

#include#include#include#include#include#define ElemType chartypedef struct{ ElemType *start;//顺序字符串的起始位置 int length;//字符串的长度,即串中的字符个数}CommonStr;int nextval[20]={0};//用于存放模式串

2013-05-31 23:10:51 978

原创 串的模式匹配(基于KMP的匹配算法)

#include#include#include#include#include#define ElemType chartypedef struct{ ElemType *start;//顺序字符串的起始位置 int length;//字符串的长度,即串中的字符个数}CommonStr;int next[20]={0};//用于存放模式串的ne

2013-05-31 23:09:28 931

原创 串的模式匹配(用一般算法实现)

#include#include#include#include#include#define ElemType chartypedef struct{ ElemType *start;//顺序字符串的起始位置 int length;//字符串的长度,即串中的字符个数}CommonStr;int CreateStr(CommonStr &pstr

2013-05-31 23:07:42 1399

原创 求斐波那契数列的第 n 项的值

原题:用递推法计算斐波那契(Fibonacci)数列的第 n 项.分析:斐波那契数列为 0, 1, 1, 2, 3, 5, 8, 13, ..., 即 F(0) = 0, F(1) = 1, ... , F(n) = F(n -1) + F(n - 2)(当 n > 1 时).#includeint fibonacci(int n){ int f0 = 0, f1 = 1,

2013-05-31 22:36:54 2711

原创 进制转换程序

该程序能实现各种进制的数据间的相互转换(只支持整数).#include#include#define INIT_SIZE 100 //存储空间初始分配量#define INCREMENT 10 //存储空间分配增量#define ElemType int //数据类型//堆栈数据结构typedef struct { ElemType *base; //在栈

2013-05-31 22:18:50 1018

原创 对一组数穷尽所有排列的算法

原题:将A, B, C, D, E, F 这 6 个变量排成如下三角形,这 6 个变量分别取[1, 6] 上的整数,且均不相同.求使三角形三条边上的变量之和相等的全部解. A B F C D E 分析:在程序中引入变量 a, b, c, d, e, f, 并让它们分别顺序取 1 至 6 的整数, 在它们互不相同的条件下,测试由它们排成的三角形边上的变量之和是否相等,如相等即为一种要求的排雷,把它们

2013-05-31 19:32:36 2510

原创 J003_JAVA中字符串转与日期类型的相互转换

程序中的注释说得很清楚了,我就不多说了package mypackage1;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date;/** * JAVA中字符串转与日期类型的相互转换 * @author Administrator */

2013-05-16 22:25:39 1240

原创 JAVA字符串和日期的相互转换

这里用到的类是:java.text.SimpleDateFormat 用法: SimpleDateFormat sdf =   new SimpleDateFormat( " yyyy-MM-dd HH:mm:ss " );        这一行确立了转换的格式,yyyy是完整的公元年,MM是月份,dd是日期,至于HH:mm:ss自然是时分秒了!        为什么有的格式大写,

2013-05-10 18:38:57 1068

Android雷达扫描效果

Android华丽的雷达扫描效果实现,采用自定义View,自定义属性,打造自己的雷达扫描控件。

2015-09-25

自定义控件

通过这个Demo,彻底搞清楚如何自定义控件

2015-09-23

Andoid UI 适配

这个例子是从官google官网上下载的,通过它你可以学习到如何实现自适配的UI界面,如何让自己的应用能够适配到小屏、大屏设备。

2015-08-29

Android Bitmap 处理示例

这个 Demo 给出了 Android 上处理图片的通用方法,包括图片缓存,加载大图片的方法等。

2015-05-28

retainfragment

如何通过Fragment来保存 Activity 的 state,使其在 restart 的时候不会丢失状态。

2015-05-26

Andorid Messenger 进程间通信

android 通过 Messenger 进行进程通信的 demo ,实现 Activity 和 service 的跨进程通信

2014-11-10

android Loopers and Handlers

本章的主题是 Android 的 Looper 和 Handler 的用法

2014-10-30

activity fragments

这个例子演示了如何在 configuraciton 改变的时候,保存 activity 及后台任务的状态

2014-10-29

java-nio实例代码

这是Java nio 的实例代码,非常经典精简,学完它你就可以掌握 nio 了...

2014-10-19

Android Fragment Demo

这是个完整的 Android Fragment 的 Demo

2014-10-04

基于java的学生信息管理系统

这是我做的基于java的学生信息管理系统,没有采用任何框架技术.因为月低要考试,我没时间修改了,所以系统尚有缺陷.另外,在设计过程我犯了个低级的错误:几乎所有的按钮响应都用类来实现,实际上这样会造成代码冗余,但是我也没时间改了.等考完试,我一定会把它重新设计一番.

2013-05-08

模仿QQ的程序的完整源代码

这是我用Java写的模仿QQ的程序的源代码,该应用程序有良好的可扩展性,你可以轻松的扩展它的功能,稍作修改加工就能得到属于你自己QQ应用程序.其实这不难的.开发个初级的Java应用程序不外乎Java的核心语法,用户界面设计(JavaSwing),网络连接和数据库连接几方面.只要你把这几方面都学会了,你也能轻易作出这种应用程序.

2013-04-24

用JDBC操作mysql数据库的实例的源代码

这是我用JDBC与mysql数据库连接及交互的很多实例的源代码,里面有一个完整的javaweb工程,工程下面有很多用JDBC操作mysql数据库的实例.你可以根据你的需要方便的修改这些实例程序的代码,并用到你的javaweb项目中.

2013-04-14

这里面有用JDBC技术与mysql数据交互的很多实例的源代码

这个压缩包里有我在学习JDBC时所写的很多实例的源代码,通过这些代码你就能轻松的与mysql数据库交互.有了它,web应用与数据库的连接交互不再是难题

2013-04-13

这是我用struts开发的一个简易的学生信息管理系统,能与mysql数据库交互

这是我用struts开发的一个简易的学生信息管理系统,该系统有良好的可扩展性,它能和mysql数据库交互,将学生的相关信息写入到数据.压缩包里有实现它的所有源代码及相关说明文件,你可以轻松的扩展其功能,如查询或修改mysql数据库中相应的学生信息等.我已实现了将学生信息添加到数据库的功能.

2013-04-13

这个压缩包里有JSTL自定义标签开发实例的源码及相关文件

这个压缩包里有我在学习JSTL自定义标签时写的一些自定义标签实例,如果你也在学JavaWeb技术,那么我相信这些源码会对你有帮助的

2013-04-13

这是一个用struts做的简易的学生信息系统,能连接到mysql数据库

这是个用struts做的简易的学生信息管理系统,它能连接到mysql数据库,压缩包里有所有的源代码,其中的管理学生信息模块有良好的可扩展性,我只实现了向数据库添加学生信息的功能.里面的程序说明文件较详细地说明了我开发的整个步骤.

2013-04-13

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除