Java Stack là gì? (What is Java Stack?).





Stack dịch theo nghĩa tiếng việt có nghĩa cọng rơm, và tất nhiên ta sẽ không dùng nghĩa này mà ta dùng theo từ dịch chuyên ngành có nghĩa là ngăn xếp.

Trong bài viết này ta sẽ tìm hiểu về Stack trong ngôn ngữ lập trình Java.





Stack là một cấu trúc dữ liệu lưu trữ nhiều phần tử dữ liệu. Stack hoạt động theo cơ chế vào sau ra trước (Last In/First Out (LIFO)).

Trong Stack có các thao tác cơ bản sau:
  • Push : thêm 1 phần tử vào đỉnh Stack
  • Pop : lấy 1 phần tử từ đỉnh Stack
  • Peek: trả về phần tử đầu Stack mà không loại bỏ nó ra khỏi Stack
  • isEmpty: Kiểm tra Stack có rỗng ko?
  • Search: trả về vị trí phần tử trong Stack tính từ đỉnh stack nếu ko thấy trả về -1

Ví dụ:

public class JavaStackQueue {
   
    public static void main(String[] args)
    {
       
        Stack<Integer> s = new Stack<Integer>();

        for(int i = 1; i < 10 ; i++)
        {
            s.push(i); // them phan tu vao dau stack
        }

        System.out.println("Peek: " + s.peek()); //tra ve phan tu dau stack va ko loai bo no ra khoi stack
        System.out.println("Search: " + s.search(16)); //tra ve vi tri trong stack tinh tu dau stack neu ko co tra ve -1

        while(!s.empty()) //kiem tra neu stack khac rong           
        {
            System.out.println("Pop: " + s.pop()); // loai bo phan tu dau ra khoi stack       
        }
           
    }
}

Dưới đây là kết quả sau khi chạy ứng dụng:




Nguồn: congdongjava.com














No comments:

Post a Comment