• トノイテ、オ、、ソケヤ、マ、ウ、ホソァ、ヌ、ケ。」
  • コス、オ、、ソケヤ、マ、ウ、ホソァ、ヌ、ケ。」
  • ・ケ・ソ・テ・ッ 、リケヤ、ッ。」

*フワシ。 [#k70ba693]

#contents


*・ケ・ソ・テ・ッ [#ieb1e224]

。。''・ケ・ソ・テ・ッ''、マ。「コヌク螟ヒウハヌシ、キ、ソ・ヌ。シ・ソ、ォ、鮨遉ヒシ隍スミ、ケ。ハ。甅IFO。ァク衄タ霓ミ。ヒケスツ、、サ、テ、ソ1シ。クオヌロホ、ヌ、「、。」

。。・ヌ。シ・ソ、ウハヌシ、ケ、、ウ、ネ、''・ラ・テ・キ・蝪ハpush。ヒ''。「・ヌ。シ・ソ、シ隍スミ、ケ、ウ、ネ、''・ン・テ・ラ。ハpop。ヒ''、ネ、、、ヲ。」、ウ、ホ・ラ・テ・キ・螟ネ・ン・テ・ラ、マLIFO。ハLast In First Out。ァク衄、タ霓ミ、キ。ヒ、ヌ、「、。」

#img(http://security2600.sakura.ne.jp/main2/image2/stack.jpg)
#img(,clear)


*・ケ・ソ・テ・ッ、ホ・「・・エ・・コ・ [#va7ca12b]

。。・ケ・ソ・テ・ッS、マS=(array A,top,length)、ヌトオチ、オ、、。」

-array
--・ヌ。シ・ソ、ハンツク、ケ、、ソ、皃ホ1シ。クオヌロホA
-top
--・ケ・ソ・テ・ッ・ン・、・・ソ
--シ。、ヒ・ヌ。シ・ソ、タム、牴フテヨ、ホヘラチヌネヨケ讀ホ、ウ、ネ。」
-length
--。ハ・ケ・ソ・テ・ッ、ホソシ、オ。ヒ。癸ハ・ケ・ソ・テ・ッ、ホヘラチヌソ。ヒ

。。、ソ、タ、キ。「ス魘テヘ、ネ、キ、ニtop=0、ヌ、「、。」

。。・ラ・テ・キ・螟ホ・「・・エ・・コ・澑ush(S,x)、マシ。、ホトフ、熙ヌ、「、。」

#code(pascal){{
if top=length then
  return error
top「ォtop+1
A[top]「ォx

}}

。。、ス、、ヌ、マ・「・・エ・・コ・澑ush(S,x)、ヒ、ト、、、ニイタ筅ケ、。」~
。。1ケヤフワ、ホifハク、マ・ケ・ソ・テ・ッ、ャーヌユ、ヒ、ハ、テ、ソ、ォ、ノ、ヲ、ォ、・チ・ァ・テ・ッ、キ、ニ、、、。」、筅キーヌユ、ヒ、ハ、テ、ソ、鬘「・ィ・鬘シ、スミホマ、キ、ニスェホサ、ケ、。」~
。。3ケヤフワ、ヌ・ケ・ソ・テ・ッ・ン・、・・ソ、1チ、荀キ、ニ。「4ケヤフワ、ヌ・ケ・ソ・テ・ッ・ン・、・・ソ、ホーフテヨ、ヒ・ヌ。シ・ソ、タム、、ヌ、、、。」

。。、ウ、ホ・「・・エ・・コ・澑ush(S,x)、ホキラササホフ、マ&mimetex("O(1)");、ヌ、「、。」

。。、゙、ソ。「・ン・テ・ラ、ホ・「・・エ・・コ・澑op(S)、マシ。、ホトフ、熙ヌ、「、。」

#code(pascal){{
if top=0 then
  return error
top「ォtop-1
return A[top+1]

}}

。。、ス、、ヌ、マ・「・・エ・・コ・澑op(S)、ヒ、ト、、、ニイタ筅ケ、。」~
。。1ケヤフワ、ホifハク、マ・ケ・ソ・テ・ッ、ャカ、ヒ、ハ、テ、ソ、ォ、ノ、ヲ、ォ、・チ・ァ・テ・ッ、キ、ニ、、、。」、筅キカ、ヒ、ハ、テ、ソ、鬘「・ィ・鬘シ、スミホマ、キ、ニスェホサ、ケ、。」~
。。3ケヤフワ、ヌ・ケ・ソ・テ・ッ・ン・、・・ソ、1クコ、鬢キ、ニ。「4ケヤフワ、ヌ・ケ・ソ・テ・ッ・ン・、・・ソ、ホーフテヨ、ホ・ヌ。シ・ソ、ハヨ、キ、ニスェホサ、ケ、。」

。。、ウ、ホ・「・・エ・・コ・澑op(S)、ホキラササホフ、マ&mimetex("O(1)");、ヌ、「、。」


*Java、ヌ・ケ・ソ・テ・ッ、チ犲 [#jd7aab9e]

。。・ケ・ソ・テ・ッヘム、ホ・皈ス・テ・ノ、マシ。、ャオ、イ、鬢、。」

-Init
--・ケ・ソ・テ・ッ、ウホハン、キ。「・ケ・ソ・テ・ッ、ホソシ、オ、ネ・ケ・ソ・テ・ッ・ン・、・・ソ、ス魘イス、ケ、。」
-Push
--・ケ・ソ・テ・ッ、ヒ・ヌ。シ・ソ、タム、爍」
-Pop
--・ケ・ソ・テ・ッ、ォ、鬣ヌ。シ・ソ、シ隍スミ、ケ。」
-IsEmpty
--・ケ・ソ・テ・ッ、ャカ、ォ、ノ、ヲ、ォトエ、ル、。」
-IsFull
--・ケ・ソ・テ・ッ、ャーヌユ、ヒ、ハ、テ、ソ、ォ、ノ、ヲ、ォ、トエ、ル、。」


**Java、ヒ、隍シツクウ [#o60eee4a]

。。・ュ。シニホマ、ヌソテヘ、ニホマ、キ、ニ。「・ケ・ソ・テ・ッ、ヒ、ス、ホ・ヌ。シ・ソ、Push、キ。「・ケ・ソ・テ・ッ、ャーヌユ、ヒ、ハ、テ、ソ、鮨酳ヨ、ヒPop、ケ、・ラ・・ー・鬣爍ハStackTest.java。ヒ、シ。、ヒシィ、ケ。」、ソ、タ、キ。「IsEmpty,IsFull、ホキイフ、マbooleanキソ、ハヨ、ケ、ウ、ネ、ヒ、ケ、。」

#code(java){{
/*
 * StackTest。ァ・ケ・ソ・テ・ッ、ホエヒワチ犲
 * ニホマ
 */
import java.io.*;

public class StackTest {
	static int[] StackData;	//・ケ・ソ・テ・ッ
	static int StackPtr;	//・ケ・ソ・テ・ッ・ン・、・・ソ
	static int StackMax;	//・ケ・ソ・テ・ッ、ホソシ、゚
	
	//Init。ァ・ケ・ソ・テ・ッ、ス魘イス、ケ、
	//stackMax。ァ・ケ・ソ・テ・ッ、ホソシ、オ
	//フ皃テヘ。ァ、ハ、キ
	static void Init(int stackMax){
		StackMax=stackMax;
		StackData=new int[StackMax];
		StackPtr=0;
	}
	
	//Push。ァ・ケ・ソ・テ・ッ、ヒ・ヌ。シ・ソ、タム、
	//data。ァ・ヌ。シ・ソ
	//フ皃テヘ。ァ、ハ、キ
	static void Push(int data){
		if(StackMax <= StackPtr){
			return;
		}
		StackData[StackPtr]=data;
		StackPtr++;
	}
	
	//Pop。ァ・ケ・ソ・テ・ッ、ォ、鬣ヌ。シ・ソ、シ隍スミ、ケ
	//フ皃テヘ。ァシ隍スミ、キ、ソ・ヌ。シ・ソ
	static int Pop(){
		if(StackPtr <= 0){
			return 0;
		}
		StackPtr--;
		return StackData[StackPtr];
	}
	
	//IsEmpty。ァ・ケ・ソ・テ・ッ、ャカ、ォ、ノ、ヲ、ォトエ、ル、
	//フ皃テヘ。ァtrue、ハ、鮓
	static boolean IsEmpty(){
		if(StackPtr==0){
			return true;
		}else{
			return false;
		}
	}
	
	//IsFull。ァ・ケ・ソ・テ・ッ、ャーヌユ、ォ、ノ、ヲ、ォトエ、ル、
	//フ皃テヘ。ァtrue、ハ、鮓
	static boolean IsFull(){
		if(StackPtr >= StackMax){
			return true;
		}else{
			return false;
		}
	}
	
	//ShowStack。ァ・ケ・ソ・テ・ッ、ノスシィ、ケ、
	//フ皃テヘ。ァ、ハ、キ
	static void ShowStack(){
		System.out.println(StackPtr + ":");
		for(int i=0;i<StackPtr;i++){
			System.out.println(StackData[i]+" ");
		}
		System.out.println();
	}
	
	//main
	public static void main(String[] args) {
		//・ケ・ソ・テ・ッ、ス魘イス
		Init(5);
		ShowStack();
		
		BufferedReader rd=new BufferedReader(new InputStreamReader(System.in));
		
		//・ケ・ソ・テ・ッ、ャーヌユ、ヒ、ハ、、゙、ヌキォ、ハヨ、キ
		while(IsFull()!=true){
			try{
				System.out.println("?");
				String ln=rd.readLine();
				int data=Integer.parseInt(ln);
				System.out.println("push:"+data+"\t");
				Push(data);
				ShowStack();
			}catch(IOException e){
				System.out.println("ニホマ・ィ・鬘シ");
				return;
			}catch(NumberFormatException e){
				System.out.println("・ケ・ソ・テ・ッ、ヒタム、狒テヘ、ニホマ、サ、");
				continue;
			}
		}
		
		//・ケ・ソ・テ・ッ、ォ、鬣ヌ。シ・ソ、シ隍スミ、キ。「ノスシィ、ケ、。」
		System.out.println("\n\t");
		ShowStack();
		
		//・ケ・ソ・テ・ッ、ャカ、ヒ、ハ、、゙、ヌキォ、ハヨ、ケ
		while(IsEmpty() != true){
			int n = Pop();
			System.out.println("pop:"+n+"\t");
			ShowStack();
		}
	}
}

}}

。。、ウ、ホ・ラ・・ー・鬣爨シツケヤ、ケ、、ネシ。、ホ、隍ヲ、ヒ、ハ、。」?、ホシ。、ホソサ、ャニホマ、キ、ソソテヘ、ヌ、「、。」

 >java StackTest
 0:
 ? 6
 push:6	1:6 
 ? 4
 push:4	2:6 4 
 ? 2
 push:2	3:6 4 2 
 ? 1
 push:1	4:6 4 2 1 
 ? 9
 push:9	5:6 4 2 1 9
 
 	5:6 4 2 1 9 
 pop:9	4:6 4 2 1 
 pop:1	3:6 4 2 
 pop:2	2:6 4 
 pop:4	1:6 
 pop:6	0:


*・ケ・ソ・テ・ッ、ホアヘム [#gf221150]

-mainエリソ、ホテ讀ヌハフ、ホエリソ、クニ、モスミ、ケ・ラ・・ー・鬣
-[[・マ・ホ・、、ホナ緇]
--3、ト、ホ・ケ・ソ・テ・ッ、ケヘ、ィ、。」
-[[・ー・鬣ユ・「・・エ・・コ・濔]
--[[・ー・鬣ユテオコ・「・・エ・・コ・濔]、ヌ・ケ・ソ・テ・ッ、膽[・ュ・蝪シ]]、ャサネ、、、。」
-[[オユ・ン。シ・鬣・ノオュヒ。]]
-[[シーノセイチハヒ。]]


*サイケヘハクク・ [#zb8d5ab1]

-ケヨオチ・ホ。シ・ネ
-。リトカゾイmini。。エヒワセハオサスムシヤサクウ。。ハソタョ19ヌッナルネヌ。ル
-。リEclipse、ヒ、隍ツホクウウリスャ。。Java、ヌ、マ、ク、皃・「・・エ・・コ・猗フ遑ル