激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Java數據結構之棧的基本定義與實現方法示例

Java數據結構之棧的基本定義與實現方法示例

2021-01-24 11:04CharlinGod Java教程

這篇文章主要介紹了Java數據結構之棧的基本定義與實現方法,簡單描述了數據結構中棧的功能、原理,并結合java實例形式分析了棧的基本定義與使用方法,需要的朋友可以參考下

本文實例講述了java數據結構的基本定義與實現方法。分享給大家供大家參考,具體如下:

一、概述:

1、基本概念:

棧是一種數據結構,是只能在某一端插入和刪除的特殊線性表。它按照后進先出的原則存儲數據,先進入的數據被壓入棧底,最后的數據在棧頂,需要讀數據的時候從棧頂開始彈出數據(最后一個數據被第一個讀出來)。

棧是允許在同一端進行插入和刪除操作的特殊線性表。允許進行插入和刪除操作的一端稱為棧頂(top),另一端為棧底(bottom);棧底固定,而棧頂 浮動;棧中元素個數為零時稱為空棧。插入一般稱為進棧(push),刪除則稱為退棧(pop)。 棧也稱為先進后出表。

棧可以用來在函數調用的時候存儲斷點,做遞歸時要用到棧!

2、示例圖:

Java數據結構之棧的基本定義與實現方法示例

二、代碼實現:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
package com.java.stack;
/**
 * @描述 棧示例
 * @項目名稱 java_datastruct
 * @包名 com.java.stack
 * @類名 mystack
 * @author chenlin
 * @version 1.0
 */
public class charstack {
 private int maxsize;// 站的大小
 private char[] arr;
 private int top;// 指向棧頂元素
 public charstack(int size) {
  this.maxsize = size;
  this.arr = new char[maxsize];
  this.top = -1;
 }
 /**
  * 壓入數據
  *
  * @param value
  */
 public void push(char value) {
   arr[++top] = value;
 }
 /**
  * 彈出數據
  *
  * @param value
  */
 public char pop() {
  return arr[top--];
 }
 /**
  * 訪問數據
  *
  * @return
  */
 public long peek() {
  return arr[top];
 }
 /**
  * 判斷是否為空
  *
  * @return
  */
 public boolean isempty() {
  return (top == -1);
 }
 /**
  * 是否滿了
  *
  * @return
  */
 public boolean isfull() {
  return (top == maxsize - 1);
 }
 /**
  * 把字符串反序
  *
  * @param text
  * @return
  */
 public string reverse(string text) {
  for (int i = 0; i < text.length(); i++) {
   push(text.charat(i));
  }
  string result = "";
  while (!isempty()) {
   result += (char)pop();
  }
  return result;
 }
 public static void main(string[] args) {
  charstack stack = new charstack(30);
  while (!stack.isfull()) {
   stack.push('l');
   stack.push('a');
   stack.push('k');
   stack.push('m');
   stack.push('n');
   stack.push('e');
   stack.push('b');
   stack.push('f');
   stack.push('d');
   stack.push('e');
  }
  system.out.println("服務器之家測試結果:");
  system.out.println("----------------------------彈出----------------------------");
  while (!stack.isempty()) {
   system.out.println(stack.pop());
  }
  system.out.println("----------------------------反序----------------------------");
  system.out.println(stack.reverse("abcdefg"));
 }
}

運行結果:

Java數據結構之棧的基本定義與實現方法示例

希望本文所述對大家java程序設計有所幫助。

原文鏈接:http://blog.csdn.net/lovoo/article/details/51590489

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产免费黄网 | 九九热视频这里只有精品 | 特片网久久 | 国产三级午夜理伦三级 | 欧美重口另类videos人妖 | 毛片视频大全 | 精品久久久久99 | av在线在线 | 久久久三级免费电影 | 久在线播放| 成人国产精品齐天大性 | 国产69精品福利视频 | 国产精品一区二区免费在线观看 | av在线免费播放 | 亚洲成人精品视频 | 午夜视频久久久 | 精品亚洲视频在线观看 | 久久久www免费看片 日本视频网 | 午夜精品福利影院 | 久久激情国产 | 黄色网址进入 | 本色视频aaaaaa一级网站 | 亚洲成人午夜精品 | 免费毛片随便看 | 7777在线观看 | 精品一区二区久久久久久按摩 | 亚洲一区二区三区精品在线观看 | 天天鲁在线视频免费观看 | 中文字幕免费在线看 | 草草视频免费 | 欧美在线观看黄色 | 一级做a爱性色毛片免费1 | 狠狠操人人干 | 曰批全过程120分钟免费69 | 高清一区二区在线观看 | 亚洲精品aⅴ中文字幕乱码 欧美囗交 | 精国产品一区二区三区四季综 | 中文字幕在线观看亚洲 | 欧美中文字幕一区二区 | 九九精品视频观看 | 羞羞羞羞视频 |