萍聚社区-德国热线-德国实用信息网

 找回密码
 注册

微信登录

微信扫一扫,快速登录

萍聚头条

查看: 765|回复: 5

请教各位下面的java 小程序!

[复制链接]
发表于 2004-5-12 11:56 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册 微信登录

x
// A  quene class for characters.
class Quene{
private char q[];//this array holds the quene
private int publoc,getloc; //the put and get indices.

// Construct an empty Quene given its size.
Quene(int size){
q=new char[size+1];                      //?
putloc=getloc=0;
                     }

// Construct  a Quene from a Quene.


Quene (Quene ob){
putloc=ob.putloc;
getloc=ob.getloc;
q=new char[ob.q.length];
//copy elements
for(int i=getloc+1;i<=putloc;i++)            //?
q=ob.q;
                }
Quene (char a[]){
putloc=getloc=0;
q=new char [a.length+1];
for(int i=0;i<a.length;a++)
put a;
                      }
// put a character into the quene.
void put(char ch){
if(putloc==getloc){
System.out.println("Quene is full");
return;
                             }
  putloc++;
q[putloc]=ch;
                          }
//get a character from the quene.
char get[]{
if(getloc==putloc){
System.out.println("Quene is empty.")
return (char)0;
                           }
getloc++;
return q[getloc];
                 }

  
                        }

该程序想设计出一个先入先出的队列。这只是程序的一部分。但是我有的地方不太明白(打问号的行),请各位帮忙解释一下。
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
发表于 2004-5-12 12:29 | 显示全部楼层
你如果学过数据结构就应该知道,通常数组的[0]位都是保留位,用作监视哨或者指针的原始位来用,后面正好对应数字存取位,这就是为什么要定义char[size+1]的原因。而后面的东东,你看一下取字符的methode就知道,get(读指针)是先向后移一位,才开始读操作的。
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
 楼主| 发表于 2004-5-12 13:18 | 显示全部楼层
多谢!,明白多了.
我是Java 的初学者,你说数组的[0]位是保留位,那么为什么在java中,所有的数组都以0作为第一个元素的索引呢?

希望能得到你的指点!谢谢!
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
发表于 2004-5-12 13:20 | 显示全部楼层
呃,c/c++中的array的第一个index也是0啊。别的语言没学过,不知道这算不算是常规。
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
发表于 2004-5-12 14:20 | 显示全部楼层
Array[0] 当然百分百是数组的第一位,所有的语言都是如此。偶说的保留位,是特指在数据结构当中的数组应用,比如标准排序算法和各种队列应用当中,一般都把第一位[0]空出来,或者不用,或者用作临时交换变量,而从 [1] 开始正常存储,所以叫 [0] 保留位,不要误解。
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
 楼主| 发表于 2004-5-12 15:07 | 显示全部楼层
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
您需要登录后才可以回帖 登录 | 注册 微信登录

本版积分规则

手机版|Archiver|AGB|Impressum|Datenschutzerklärung|萍聚社区-德国热线-德国实用信息网

GMT+1, 2025-2-7 10:43 , Processed in 0.064824 second(s), 17 queries , MemCached On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表