English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

تعليمات Java الأساسية

Java Control Flow

Java Array

Java Object-Oriented (I)

Java Object-Oriented (II)

Java Object-Oriented (III)

معالجة الاستثناءات Java

Java List

Java Queue (مكتبة)

Java Map

Java Set

Java Input/Output (I/O)

Java Reader/Writer

مواضيع أخرى Java

تنفيذ هيكل البيانات Stack (Stack) في برنامج Java

    جميع الأمثلة على Java

في هذا المثال، سنتعلم كيفية تنفيذ هيكل البيانات Stack باستخدام Java.

للتعرف على هذا المثال، تأكد من أنك قمت بزيارة الدروس التالية أولاً،

مثال1: تنفيذ برنامج Java Stack

// Stack implementation in Java
class Stack {
  //存储堆栈元素
  private int[] arr;
  //表示堆栈的顶部
  private int top;
  //堆栈的总容量
  private int capacity;
  //创建堆栈
  Stack(int size) {
    // 初始化数组
    // 初始化堆栈变量
    arr = new int[size];
    capacity = size;
    top = -1;
  }
  // 将元素推送到堆栈顶部
  public void push(int x) {
    إذا (isFull()) {
      System.out.println("Stack OverFlow");
      // إنهاء البرنامج
      System.exit(1);
    }
    // إدراج عنصر في أعلى المكتبة
    System.out.println("إدراج " + x);
    arr[++top] = x;
  }
  //إزالة العنصر من أعلى الدليل
  public int pop() {
    // إذا كانت المكتبة فارغة
    // لا يوجد عناصر للازالة
    if (isEmpty()) {
      System.out.println("STACK EMPTY");
      // إنهاء البرنامج
      System.exit(1);
    }
    //إزالة العنصر من أعلى الدليل
    return arr[top--];
  }
  // عودة حجم المكتبة
  public int getSize() {
    return top + 1;
  }
  // التحقق من whether المكتبة فارغة
  public Boolean isEmpty() {
    return top == -1;
  }
  // التحقق من whether المكتبة مليئة
  public Boolean isFull() {
    return top == capacity - 1;
  }
  // عرض عناصر المكتبة
  public void printStack() {
    for (int i = 0; i <= top; i++) {
      System.out.print(arr[i] + ", ");
    }
  }
  public static void main(String[] args) {
    Stack stack = new Stack(5);
    stack.push(1);
    stack.push(2);
    stack.push(3);
    System.out.print("Stack: ");
    stack.printStack();
    // إزالة عنصر من المكتبة
    stack.pop();
    System.out.println("\nبعد إزالة");
    stack.printStack();
  }
}

نتائج الإخراج

إدراج 1
إدراج 2
إدراج 3
Stack: 1, 2, 3,  
بعد إزالة
1, 2,

في المثال السابق، قمنا بإنشاء هيكل بيانات Stack باستخدام Java.

مثال 2: استخدامه Stack للإنشاء Stack

يقدم Java فئة مدمجة يمكن استخدامها لإنشاء مكتبة Stack.

import java.util.Stack;
class Main {
  public static void main(String[] args) {
    // 创建一个Stack类的对象
    Stack<String> animals = new Stack<>();
    //إدراج العنصر في أعلى الدليل
    animals.push("Dog");
    animals.push("Horse");
    animals.push("Cat");
    System.out.println("Stack: " + animals);
    //إزالة العنصر من أعلى الدليل
    animals.pop();
    System.out.println("بعد إزالة Stack: " + animals);
    }
}

نتائج الإخراج

Stack: [Dog, Horse, Cat]
Stack: [Dog, Horse]

في المثال السابق، استخدمنا فئة Stack في Java لتحقيق الدليل. هنا،

  • animals.push() - إدراج العنصر في أعلى الدليل

  • animals.pop() - إزالة العنصر من أعلى الدليل

ملاحظة، نحن <String> في إنشاء الدليل باستخدام حوافز. إنها تمثل أن الدليل هو نوع عام. للحصول على معلومات إضافية حول التصنيفات العامة، يرجى زيارةالتصنيفات العامة في Java

جميع الأمثلة على Java