Bài giảng Lập trình Java: Bài 12 - Bùi Trọng Tùng
Số trang: 43
Loại file: pdf
Dung lượng: 688.57 KB
Lượt xem: 18
Lượt tải: 0
Xem trước 5 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Bài 12 giới thiệu một số cấu trúc dữ liệu trong Java. Nội dung chính trong bài này gồm có: Danh sách liên kết (Linked List), ngăn xếp (Stack), hàng đợi (Queue), cây (Tree). Mời các bạn cùng tham khảo để biết thêm các nội dung chi tiết.
Nội dung trích xuất từ tài liệu:
Bài giảng Lập trình Java: Bài 12 - Bùi Trọng Tùng 05/10/2014 BÀI 12. MỘT SỐ CẤU TRÚC DỮ LIỆU TRONG JAVA 1Nội dung• Danh sách liên kết (Linked List)• Ngăn xếp (Stack)• Hàng đợi (Queue)• Cây (Tree) 2 1 05/10/2014 1. DANH SÁCH LIÊN KẾT (LINKED-LIST) 3Mảng vs Danh sách liên kết(DSLK)• Hạn chế của mảng Unused spaces X A BThêm một phần tử. Xóa một phần tử. Y 4 2 05/10/2014Mảng vs Danh sách liên kết X A B I want to add Y after A. Y ? 5Ý tưởng xây dựng DSLK• Mỗi phần tử trong danh sách, gọi là một nút, chứa một tham chiếu trỏ đến nút tiếp theo• Các phần tử không nằm kế tiếp nhau trên bộ nhớ: • Mảng: Các phần tử nằm kế tiếp nhau trên bộ nhớ element next element next ai ai+1 … … và nút kế tiếp trong danh sách (nhưng Một nút trong không nhất thiết phải kế tiếp trong bộ nhớ) danh sách… element next ak Tham chiếu next là null: không có nút kế tiếp 6 3 05/10/2014Nhắc lại: Tham chiếu x 20 int x = 20; Integer y = new Integer(20); y 20 Integer ClassName myObject; new MyClass(); myObject = new MyClass(); Bộ Bộ nhớ myObject nhớ stack Đối tượng heap myObject là tham chiếu 7 Nhắc lại: Tham chiếu(tiếp) Integer y = new Integer(20); y 20 Integer w; Integer w = new Integer(20); if (w == y) System.out.println(1. w == y); w 20 w = y; Integer if (w == y) System.out.println(2. w == y); • Kết quả hiển thị là gì? 8 4 05/10/2014Nhắc lại (tham chiếu)• Mô tả nào là đúng về e trên bộ nhớclass Employee { private String name; Employee e = new Employee(Alan, 2000); private int salary;} (A) e (B) e Alan 2000 Alan 2000 (C) e (D) e 2000 Alan Alan 2000 9Xây dựng DSLK trên Java• Sử dụng kỹ thuật lập trình tổng quát• Giao diện IList định nghĩa các phương thức IList.javaimport java.util.*;public interface IList { public boolean isEmpty(); public int size(); public E getFirst() throws NoSuchElementException; public boolean contains(E item); public void addFirst(E item); public E removeFirst() throws NoSuchElementException; public void print();} ...
Nội dung trích xuất từ tài liệu:
Bài giảng Lập trình Java: Bài 12 - Bùi Trọng Tùng 05/10/2014 BÀI 12. MỘT SỐ CẤU TRÚC DỮ LIỆU TRONG JAVA 1Nội dung• Danh sách liên kết (Linked List)• Ngăn xếp (Stack)• Hàng đợi (Queue)• Cây (Tree) 2 1 05/10/2014 1. DANH SÁCH LIÊN KẾT (LINKED-LIST) 3Mảng vs Danh sách liên kết(DSLK)• Hạn chế của mảng Unused spaces X A BThêm một phần tử. Xóa một phần tử. Y 4 2 05/10/2014Mảng vs Danh sách liên kết X A B I want to add Y after A. Y ? 5Ý tưởng xây dựng DSLK• Mỗi phần tử trong danh sách, gọi là một nút, chứa một tham chiếu trỏ đến nút tiếp theo• Các phần tử không nằm kế tiếp nhau trên bộ nhớ: • Mảng: Các phần tử nằm kế tiếp nhau trên bộ nhớ element next element next ai ai+1 … … và nút kế tiếp trong danh sách (nhưng Một nút trong không nhất thiết phải kế tiếp trong bộ nhớ) danh sách… element next ak Tham chiếu next là null: không có nút kế tiếp 6 3 05/10/2014Nhắc lại: Tham chiếu x 20 int x = 20; Integer y = new Integer(20); y 20 Integer ClassName myObject; new MyClass(); myObject = new MyClass(); Bộ Bộ nhớ myObject nhớ stack Đối tượng heap myObject là tham chiếu 7 Nhắc lại: Tham chiếu(tiếp) Integer y = new Integer(20); y 20 Integer w; Integer w = new Integer(20); if (w == y) System.out.println(1. w == y); w 20 w = y; Integer if (w == y) System.out.println(2. w == y); • Kết quả hiển thị là gì? 8 4 05/10/2014Nhắc lại (tham chiếu)• Mô tả nào là đúng về e trên bộ nhớclass Employee { private String name; Employee e = new Employee(Alan, 2000); private int salary;} (A) e (B) e Alan 2000 Alan 2000 (C) e (D) e 2000 Alan Alan 2000 9Xây dựng DSLK trên Java• Sử dụng kỹ thuật lập trình tổng quát• Giao diện IList định nghĩa các phương thức IList.javaimport java.util.*;public interface IList { public boolean isEmpty(); public int size(); public E getFirst() throws NoSuchElementException; public boolean contains(E item); public void addFirst(E item); public E removeFirst() throws NoSuchElementException; public void print();} ...
Tìm kiếm theo từ khóa liên quan:
Lập trình Java Bài giảng Lập trình Java Ngôn ngữ lập trình Java Cấu trúc dữ liệu trong Java Danh sách liên kết Collections frameworkTài liệu có liên quan:
-
Giáo trình Lập trình hướng đối tượng: Phần 2
154 trang 317 0 0 -
Excel add in development in c and c phần 9
0 trang 124 0 0 -
Program C Ansi Programming Embedded Systems in C and C++ phần 4
12 trang 104 0 0 -
81 trang 93 0 0
-
265 trang 93 0 0
-
Lập trình Java cơ bản : GUI nâng cao part 3
6 trang 88 0 0 -
Bài giảng Ngôn ngữ lập trình Java: Applet - TS. Nguyễn Thị Hiền
34 trang 77 0 0 -
Nghiên cứu hệ thống báo cháy ứng dụng cảm biến nhiệt hồng ngoại và camera
4 trang 62 0 0 -
CÔNG NGHỆ JAVA ( Nguyễn Hữu Nghĩa ) - 3.2 Mô hình sự kiện với AWT
41 trang 61 0 0 -
Giáo trình Lập trình mạng - ThS. Văn Thiên Hoàng
201 trang 60 0 0