当前位置:首页 » 软件开发
开发技术指南» 文章正文
    引言: 我看的两本教科书(《数据结构(C语言版)》还有这本黄皮书)都是以这个讲解队列应用的,而且都是银行营业模拟(太没新意了)。
 

 

    摘要: 栈的应用很广泛,原书只讲解了表达式求值,那我也就只写这些。其实,栈的最大的用途是解决回溯问题,这也包含了消解递归;而当你用栈解决回溯问题成了习惯的时候,你就很少想到用递归了,比如迷宫求解。另外,人的习惯也是先入为主的,比如树的遍历,从学的那天开始,就是递归算法,虽然书上也教了用栈实现的方法,但应用的时候,你首先想到的还是递归;当然了,如果语言本身不支持递归(如basic),那栈就是唯一的选择了—......
 ·解除心头的困惑--纯虚函数    »显示摘要«
    摘要: 摘要:虚函数里面有一个很特殊的东东,那就是纯虚函数,关于纯虚函数的问题也是bbs上常见的话题,这里我想对此作一个小小的论述,希望能给初学者一个满意的解释。 一、引入原因: 1、为了方便使用多态特性,我们常常需要在基类中定义虚拟函数。 2、在很多情况下,基类本身生成对象是不合情理的。例如,动物作为一个基类可以派生出老虎、孔雀等子类,但动物本身生成对象明显不合常理。 为了解决上述问题,引入了纯虚......


数据结构学习(C++)——队列应用(事件驱动模拟)
我看的两本教科书(«数据结构(c语言版)»还有这本黄皮书)都是以这个讲解队列应用的,而且都是银行营业模拟(太没新意了).细比较,这两本书模拟的银行营业的方式还是不同的.1997版的«数据结构(c语言版)»的银行还是老式的营业模式(毕竟是1997年的事了),现在的很多地方还是这种营业模式——几个窗口同时排队.这种方式其实不太合理,经常会出现先来的还没有后来的先办理业务(常常前面一个人磨磨蹭蹭,别的队越来越短,让你恨不得把前面那人干掉).1999版的这本黄皮书的银行改成了一种挂牌的营业方式,每个来到的顾客发一个号码,如果哪个柜台空闲了,就叫号码最靠前的顾客来办理业务;如果同时几个柜台空闲,就按照一种法则来决定这几个柜台叫号的顺序(最简单的是按柜台号码顺序).这样,就能保证顾客按照先来后到的顺序接受服务——因为大家排在一个队里.这样的营业模式我在北京的西直门工商银行见过,应该说这是比较合理的一种营业模式.不过,在本文中最重要的是,这样的营业模式比较好模拟(一个队列总比n个队列好操作).

#ifndef simulation_h 【程序编程相关:用Win32 API实现串行通信

原书的这部分太难看了,我看的晕晕的,我也不知道按照原书的方法能不能做出来,因为我没看懂(旁白:靠,你小子这样还来现眼).我按照实际情况模拟,实现如下: 【推荐阅读:如何规划您的大型JAVA多并发服务器程序

  【扩展信息:VC中MSFLEXGRID内嵌EDIT实

#define simulation_h

#include <iostream.h>

#include <stdlib.h>

#include <time.h>

 

class teller

{

public:

       int totalcustomercount;

       int totalservicetime;

       int finishservicetime;

       teller() :totalcustomercount(0), totalservicetime(0),

              finishservicetime(0) {}

};

//#define printprocess

class simulation

{

public:

       simulation()

       {

              cout << endl << "输入模拟参数" << endl;

              cout << "柜台数量:"; cin >> tellernum;

              cout << "营业时间:"; cin >> simutime;

              cout << "两个顾客来到的最小间隔时间:"; cin >> arrivallow;

              cout << "两个顾客来到的最大间隔时间:"; cin >> arrivalhigh;

              cout << "柜台服务最短时间:"; cin >> servicelow;

              cout << "柜台服务最长时间:"; cin >> servicehigh;


...   下一页
 ·为什么应该升级到struts 1.1?    »显示摘要«
    摘要: struts 1.1 final终于发布了。新特性包括对多个子应用程序的支持、dynabean和beanutil、声明式异常处理、validator等。熟悉struts的人肯定早已在用struts 1.1,下面这篇文章是给不熟悉的人看的。 —————————————————— introduction since the release of struts 1.0, struts has ......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE