现在位置: 首页 > cire发表的所有文章
  • 08月
  • 10日
综合 ⁄ 共 1148字 评论关闭
Josephus问题: 假设n个竞赛者排成一个环形,依次顺序编号1,2,…,n。从某个指定的第1号开始,沿环计数,每数到第m个人就让其出列,且从下一个人开始重新计数,继续进行下去。这个过程一直进行到所有的人都出列为止。最后出列者为优胜者。 无论是用链表实现还是用数组实现来解约瑟夫问题都有一个共同点:要模拟整个游戏过程,不仅程序写起 来比较麻烦,而且时间复杂度高达O(nm),当n,m非常大(例如上百万,上千万)的时候,几乎是没有办法在短时间内出结果的。注意到原问题仅仅是要求出最后的胜利者的序号,而不是要模拟整个过......
阅读全文
  • 03月
  • 19日
综合 ⁄ 共 6058字 评论关闭
文章目录 测试输出结果 介绍类GradeBook,使用一个二维数组存储学生在多次考试所得的成绩.在一个学期中,学生很可能参加多次考试,老师也可能希望分析一个学生或整个班级在整个学期所获得成绩.即:在GradeBook二维数组中存储学生成绩.程序如下所示: 二维数组存储学生成绩类GradeBook的定义 //Definiton of class Gradebook that uses a two-dimesion array to store test grades #include <string> //program uses C++ Standard Library string class using namespace ......
阅读全文
  • 10月
  • 02日
综合 ⁄ 共 971字 评论关闭
#include <stdio.h> #include <stdlib.h> void MaxHeapify(int a[],int length,int i); void BuildMaxHeapify(int a[],int length); void HeapSort(int a[],int length); void main(void) { int i; int a[10]={1,3,4,2,1,3,2,19,4,0}; printf("Heapsort algorithm\n"); HeapSort(a,10); for(i=0;i<10;i++) printf("%d\n",a[i]); while(1); } //在i的左右都满足最大堆性质时,使数组中下标为i的节点满足最大堆性质 void MaxHeapify(int a[],int length,int i) { int l = 2*i + 1; //左节点数组下标 ......
阅读全文
  • 09月
  • 25日
综合 ⁄ 共 10386字 评论关闭
Java 语言的Date(日期),Calendar(日历),DateFormat(日期格式)组成了Java标准的一个基本但是非常重要的部分。日期是商业逻辑计算一个关键的部分,所有的开发者都应该能够计算未来的日期,定制日期的显示格式,并将文本数据解析成日期对象。  创建一个日期对象  让我们看一个使用系统的当前日期和时间创建一个日期对象并返回一个长整数,这个时间通常被称为Java 虚拟机(JVM)主机环境的系统时间。 [java] view plaincopyprint? import java.util.Date;      public class DateTest {       public static void main(String[] ......
阅读全文
  • 06月
  • 10日
综合 ⁄ 共 6698字 评论关闭
/*----------------------Down------------------------*/for (i=1; i <= pao.len; ++i){end = 0; switch (map[pao.y+i][pao.x]){case '#':end = 1;break; case ' ':DrawBlast1(pao.x, pao.y+i);map[pao.y+i][pao.x] = 'b';break; case '@':end = 1;DrawBlast1(pao.x, pao.y+i);map[pao.y+i][pao.x] = 'a';break; case 'o':if (FindElemDelete(Q, &e, pao.x, pao.y+i) == 1){e.original_time = clock();EnQueue(B, e);PaoBlast(e, p1, p2, Q, B);}break; default:break;} if (p1->x == pao.x && p1->y == p......
阅读全文
  • 05月
  • 24日
综合 ⁄ 共 601字 评论关闭
//最基本的树状数组 #include<iostream> #include<cstring> #define size 1000 using namespace std; int A[size],C[size],N; void add(int x,int d); int lowbit(int x); int sum(int x); void build(); int lowbit(int x) //求x得二进制表达式中最右边的1对应的值(不是序号) { return x&-x; } void build() //初始化数组 { for(int i=1;i<=N;i++) { add(i,A[i]); } } void add(int x,int d) //在X的位置加上大小为d的数 { while(x<=N) { C[x]+=d; ......
阅读全文
  • 05月
  • 18日
综合 ⁄ 共 13515字 评论关闭
文章目录 1.明确程序功能 2.分析与设计 1.实现IMessageSender接口 2.实现IMessageReceiver接口 3.实现Talker类 4.设计窗体,编写窗体事件代码     前一阵因为期末大作业的缘故,一直在研究C#的网络编程,之前只学习过基本的原理,但是其实编程和基本的原理从来没有联系起来过,所以学习的比较艰辛,呵呵。但是呢,其实这篇博文我不知道该怎么写,所以我把一位自己在看,感觉写的很好,对我很有启发的大神的博客转到这儿来,博文内容来自于:博客园--张子阳  谢谢大神,一......
阅读全文
  • 04月
  • 13日
综合 ⁄ 共 797字 评论关闭
转载自:http://blog.csdn.net/alex_my/article/details/17630685 当前boost最新版本为1.55,下载地址: http://sourceforge.net/projects/boost/files/boost/1.55.0/ boost官网上提供了使用指导,part2:Instllation就说明了如何去编译,地址: http://www.boost.org/boost-build2/doc/html/index.html 1、打开VS2012 Native Tools Command,可以从开始--Microsoft Visual Studio 2012找到: 2、进入解压后的文件夹,当前放在F盘根目录下。执行bootstrap.bat,如图红框所示: 3、编译,可以简单的使用b2 install,也可以指定存放目......
阅读全文
  • 04月
  • 02日
综合 ⁄ 共 5426字 评论关闭
转自:http://www.xxlinux.com/linux/article/development/soft/20070827/9501.html   在你调试程序时,当程序被停住时,你可以使用print命令(简写命令为p),或是同义命令inspect来查看当前程序的运行数据。print命令的格式是: printprint /是表达式,是你所调试的程序的语言的表达式(GDB可以调试多种编程语言),是输出的格式,比如,如果要把表达式按16进制的格式输出,那么就是/x。 一、表达式 print和许多GDB的命令一样,可以接受一个表达式,GDB会根据当前的程序运行的数据来计算这个表达式,既然是表达式,那么就可以是......
阅读全文
  • 02月
  • 21日
综合 ⁄ 共 2071字 评论关闭
1、lightoj 1043  题目大意:给你一个三角形ABC,DE//BC,已知三角形ADE和四边形BDEC的面积的比,求AD的长度。 思路 : 直接二分AD的长度即可。 2、lightoj 1048 题目大意:有N 个数,将它们按顺序分成M份,M<=min(N,300)。使得每一份的和的最大值最小。有很多中情况,这些情况中第一天、第二天……的和最大的情况。 思路 : 二分每一份的和,得到一个数mid。之后扫描数组,如果当前和大于mid或者剩下的数刚好能够凑成剩下的那些份数,那么输出当前值。 3、lightoj 1062 题目大意 : 两个梯子靠墙放,一个长度是x一个长度是y,......
阅读全文
  • 02月
  • 06日
综合 ⁄ 共 280字 评论关闭
软件开发过程 在编程的过程中,我们必须有一定的规范,这样我们才能更快速更明确地完成任务。 不仅在编程的世界里这样,在现实生活中也是这样,我们必须遵守什么才能更好地生活。 结合看书获得的一些知识,感觉软件开发过程的各个环节可以概括如下: 1. 什么(分析) 2. 如何(设计) 3. 编写(实施) 4. 测试(测试与调试) 5. 使用(实施或开发) 6. 维护(优化) 我们编写程序的过程——分析与设计。 开始时实施一个简单的版本。对它进行测试与调试。使用它以确信它如预期那样地工作。再增加任何你想要的特 性,根据需要一次次重......
阅读全文
  • 01月
  • 30日
综合 ⁄ 共 1374字 评论关闭
#include <stdio.h>#include <string>#include <stdlib.h> char *url_encode( const char *src , char * dest) {    char * tmp;    int n = strlen(src) + 1;     tmp = dest;//0 = g_new0(char, n * 3);     for (; *src != '/0' && n >= 0; src++, dest++, n--)     {        if ( strchr(":/?&=%+", *src) )        {            sprintf( dest, "%%%02X", (int) *src & 0xFF );            dest += 2;        } else if ( isalnum(*src) || strchr("./-_", *src) )            *dest = ......
阅读全文