當前位置:編程學習大全網 - 編程語言 - 壹道編程題,謝謝啦,高分急急急急用,在線等,有代碼和運行成功的截圖,小妹就這麽多分謝謝啦

壹道編程題,謝謝啦,高分急急急急用,在線等,有代碼和運行成功的截圖,小妹就這麽多分謝謝啦

import?java.io.*;

import?java.util.*;

class?SuitorNode

{

private?int?num=0; //?Suitor's?position?in?line

private?SuitorNode?next=null; //?Reference?to?next?suitor

/**

*?SuitorNode?constructor,?initializes?number

*/

public?SuitorNode(?int?number?)

{

num?=?number;

}

/*?Accessor?and?mutator?methods?*/

public?int?getNum(?)

{

return?num;

}

public?SuitorNode?getNext(?)

{

return?next;

}

public?void?setNext(?SuitorNode?nextNode?)

{

next?=?nextNode;

}

}

/**

*?Suitor?contains?the?main?code?that?creates?the?linked?list?of?suitors

*?and?eliminates?them?one?by?one.

*/

public?class?SuitorTest

{

/**

*?Main?method?constructs?and?manipulates?the?linked?list

*/

public?static?void?main(String[]?args)

{

//?Variable?declarations

int?numSuitors;

SuitorNode?current?=?null; //?Linked?list?of?suitors

SuitorNode?tail?=?null; //?Tracks?end?of?list?as?it?is?constructed

SuitorNode?prev?=?null; //?Tracks?previous?node?as?we?eliminate?suitors

Scanner?scan?=?new?Scanner(?System.in?);

System.out.println("Enter?the?number?of?suitors:");

numSuitors?=?scan.nextInt(?);

? if?(?numSuitors?>?0?)

? {

current?=?new?SuitorNode(?1?);

current.setNext(?current?); //?Make?into?a?circular?list

tail?=?current?;

for?(?int?i=1;?i?<numSuitors;?i++?)

{

//?Add?new?node?to?the?end?of?the?list

SuitorNode?temp?=?new?SuitorNode?(?i+1?);

temp.setNext(current.getNext(?)?);

current.setNext(?temp?);

tail?=?current?.?getNext(?);

}

?}

?if?(numSuitors?<=0)

?{

?System.out.println("Not?enough?suitors.");

?}

?else?if?(numSuitors?==?1)

?{

?System.out.println("You?would?stand?first?in?line.");

?}

?else

?{

?//?Eliminate?a?suitor?as?long?as?there?is?at?least?one

?while?(current.getNext()?!=?current)

?{

?//?Count?three?people?ahead,?or?go?two?people?down

?//?since?we?include?the?current?person?in?the?count

?for?(?int?i=0;?i<2;?i++?)

?{

?prev?=?current;

?current?=?current.getNext();

?}

?//?Eliminate?contestant?current

prev.setNext(?current.getNext(?));?//?Skip?over?this?node

?current?=?prev.getNext(?);

?}

?System.out.println("To?win?the?princess,?"?+

? "you?should?stand?in?position?"?+current.getNum(?)?);

?}

}

}

  • 上一篇:壓鑄模具的工藝過程工藝過程包括哪些內容求答案,越詳細越好
  • 下一篇:JAVA 添加控件問題 代碼如下 很簡單的壹個程序 在線等 Thanks
  • copyright 2024編程學習大全網