- 浏览: 157614 次
- 性别:
- 来自: 昆明
最新评论
-
北月与南安:
感谢楼主,通过这个,我学会了 Ajax与后台,项目的交互
基于JQuery+JSP的无数据库无刷新多人在线聊天室 -
吴维兴:
ddddd
基于JQuery+JSP的无数据库无刷新多人在线聊天室 -
飞行官肥皂:
赞一个,基础不好的都学会了,么么
MyBatis,Spring整合简易教程 -
cnm493:
w6889037 写道大神,问一下,如果不是测试,是实际开发中 ...
MyBatis,Spring整合简易教程 -
w6889037:
大神,问一下,如果不是测试,是实际开发中需要分层,那么impl ...
MyBatis,Spring整合简易教程
文章列表
android源码学习项目收藏
- 博客分类:
- Android
Android PDF 阅读器 http://sourceforge.net/projects/andpdf/files/
个人记账工具 OnMyMeans http://sourceforge.net/projects/onmymeans/develop
Android电池监控 Android Battery Dog http://sourceforge.net/projects/andbatdog/
RSS阅读软件 Android RSS http://code.google.com/p/android-rss/
Android的PDF阅读器 DroidReader http://co ...
#include<stdio.h>
int dis(char *s1, int begin1, int end1, char *s2, int begin2, int end2)
{
if(begin1>end1)
{
if(begin2>end2)
{
return 0;
}
else
{
return end2-begin2+1;
}
}
if(begin2> ...
我们称用1和0组成的串为“零幺串”,称只用1组成的串为“幺串”,称只用0组成的串为“零串”。试写一个函数(过程),使得它对任给零幺串S,将返回一个值N1和值N0,其中N1表示S中最长幺串的长度,N0表示S中最长零串的长度。例如,假设S是下面表示的零幺串,则在N1中返回4,在N0中返回3 S=00010111001110001111
基本思路是设置两个标志位来交替统计0和1的最长子串长度
#include<stdio.h>
void main()
{
char str[100] = "00010111001110001111";
...
没啥多说的。。。
#include<stdio.h>
void main()
{
FILE *fp1, *fp2, *fp3;
char filePath1[50],filePath2[50],filePath3[50];
char buf[250], ch;
int i, j=0, k;
printf("FilePath1:");
scanf("%s", filePath1);
printf("FilePath2:");
scanf(& ...
删除第一个链表中与第二个链表重复的节点
- 博客分类:
- 算法代码收藏
有两个链表a和b,设结点中包含学号、姓名。从a链表中删去与b链表中有相同学号的那些结点。
#include<stdio.h>
struct Node
{
int data;
struct Node *next;
};
//创建链表
struct Node *create(int n,int count)
{
int i;
struct Node *head,*p1,*p2;
head = p1 = p2 = (struct Node*)malloc(sizeof(struct Node));
head- ...
链表逆序(链表倒置)
- 博客分类:
- 算法代码收藏
将一个链表按逆序排列,即将链头当链尾,链尾当链头
#include<stdio.h>
struct Node
{
int data;
struct Node *next;
};
//创建链表
struct Node *create(int n,int count)
{
int i;
struct Node *head,*p1,*p2;
head = p1 = p2 = (struct Node*)malloc(sizeof(struct Node));
head->data = n;
f ...
两个已经按照从小到大的排序的链表,合并成一个链表,仍然保持从小到大排序(貌似是归并排序里的基本操作)
#include<stdio.h>
struct Node
{
int data;
struct Node *next;
};
//创建链表
struct Node *create(int n,int count)
{
int i;
struct Node *head,*p1,*p2;
head = p1 = p2 = (struct Node*)malloc(sizeof(struct Node));
...
在一个有序的链表上插入一个节点,使得插入节点后的链表仍然有序
#include<stdio.h>
#define N 5
struct Node
{
int data;
struct Node *next;
};
//创建链表并初始化数据
struct Node *create()
{
int i;
struct Node *head,*p1,*p2;
head = p1 = p2 = (struct Node*)malloc(sizeof(struct Node));
head->data = ...
几个人围成一圈||猴子选大王(约瑟夫环)
- 博客分类:
- 算法代码收藏
约瑟夫问题是个有名的问题:N个人围成一圈,从第一个开始报数,第M个将被杀掉,最后剩下一个,其余人都将被杀掉。例如N=6,M=5,被杀掉的人的序号为5,4,6,2,3。最后剩下1号。
一堆猴子都有编号,编号是1,2,3 ...m,这群猴子(m个)按照1-m的顺序围坐一圈,从第1开始数,每数到第N个,该猴子就要离开此圈,这样依次下来,直到圈中只剩下最后一只猴子,则该猴子为大王。
数组方式
#include<stdio.h>
#define N 5 //总人数
#define M 3 //报数最大值(1-M)
#define R 1 //留下的人数
void mai ...
两个乓乓球队比赛问题
- 博客分类:
- 算法代码收藏
题目:两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。已抽签决定比赛名单。有人向队员打听比赛的名单。a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单。
基本思想:保持甲队的顺序不动,利用三层循环来穷举乙队所有可能的排列,并利用好甲乙两队的一对一关系和题目给定的限定条件进行过滤,即可得到结果。
#include<stdio.h>
#define N 3
void main()
{
char s[N] = {'X', 'Y', 'Z'};
int i,j,k;//i,j,k分别用于确定A,B,C的对手
...
十进制十六进制互转、数字转字符、日期转总天数
- 博客分类:
- 算法代码收藏
#include<stdio.h>
/*
将十六进制转换成十进制输出
*/
void hex2dec(char *hex)
{
int result = 0;
int temp;
while(*hex != '\0')
{
if(*hex>='0' && *hex<='9')
{
temp = *hex - '0';
}
else if(*hex>='A' && *hex< ...
#include<stdio.h>
/*
a[]:待查找数组
n:数组长度
num:待查找数字
return 找到的数字在数组中的下标,没找到返回-1
*/
int binSearch(int a[], int n, int num)
{
int begin = 0;
int end = n-1;
int mid;
while(begin<=end)
{
mid = (end - begin)/2 + begin; // 此处等价于mid = (end - ...
#include<stdio.h>
#define M 3
#define N 2
#define S 3
void main()
{
int a[M][N] = {1,2,3,4,5,6};
int b[N][S] = {1,2,3,4,5,6};
int c[M][S]; // 答案为{9,12,15,19,26,33,29,40,51}
int i,j,k;
int sum = 0;
for(k=0; k<M; k++)
{
for(i=0; i<S; i+ ...
寻找鞍点(行最大,列最小)
- 博客分类:
- 算法代码收藏
#include<stdio.h>
void main()
{
int a[3][3]= {
3,6,-1,
4,5,1,
8,7,3,
};
int i,j,k;
int mini,maxj,minIndexI,maxIndexJ;
for(k=0; k<3; k++)
{
printf("找行最大:\n");
...
strcmp函数的实现
- 博客分类:
- 算法代码收藏
如果两个字符串相等,返回0,如果不相等,返回它们不想等的字符的差值(标准版实现是返回1或者-1)
#include<stdio.h>
int strcmp1(char *str1, char *str2)
{
while(*str1 == *str2)
{
if(*str1 == '\0')
{
return 0;
}
str1++;
str2++;
}
//返回差值
return (*str1 - *str2) ...