UDQL1 05 Ky thuat xu ly danh sach Lập trình Ứng dụng Quản lý 1 Chương 05 Kỹ thuật xử lý danh sách GV Trương Phước Lộc 09/2017 Khoa CNTT ĐH KHTN Nội dung 1 Mảng 1 chiều 2 Mảng 2 chiều 3 Đối tượng danh[.]
Lập trình Ứng dụng Quản lý Chương 05: Kỹ thuật xử lý danh sách GV Trương Phước Lộc 09/2017 Khoa CNTT-ĐH.KHTN Nội dung Mảng chiều Mảng chiều Đối tượng danh sách GV Trương Phước Lộc Khoa CNTT-ĐH.KHTN Mảng chiều • Mảng chiều VB.NET thực chất lớp System.Array • Thuộc tính ▫ Length: số phần tử mảng ▫ Rank: số chiều mảng • Phương thức ▫ Clone(): tạo mảng ▫ GetLength(i): trả số phần tử chiều thứ i mảng ▫ CopyTo : chép phần tử mảng sang mảng khác GV Trương Phước Lộc Khoa CNTT-ĐH.KHTN Mảng chiều • Phương thức tĩnh: ▫ ▫ ▫ ▫ Copy Find / FindAll / FindIndex / FindLast / FindLastIndex IndexOf / LastIndexOf Sort GV Trương Phước Lộc Khoa CNTT-ĐH.KHTN Mảng chiều – thao tác • Duyệt mảng ▫ Một vòng lặp để duyệt phần tử • Tìm kiếm ▫ Duyệt phần tử, phần tử thỏa điều kiện trả vị trí ▫ Tìm tất => tạo mảng chứa kết • Tìm giá trị nhỏ ▫ Giá trị cập nhật đổi phần tử xét thỏa điều kiện • Tính tổng mảng ▫ Duyệt phần tử, giá trị phần tử cộng vào biến kết GV Trương Phước Lộc Khoa CNTT-ĐH.KHTN Mảng chiều – giải thuật • Chèn thêm phần tử vào vị trí cho trước ▫ Tăng kích thước mảng thêm phần tử ▫ Dịch chuyển phần tử từ vị trí cho trước sau phần tử ▫ Gán phần tử muốn thêm vào vị trí cho trước • Xóa phần tử vị trí cho trước ▫ Dịch chuyển phần tử sau vị trí cho trước trước phần tử ▫ Giảm kích thước mảng phần tử • Sắp xếp tăng ▫ Tùy thuật toán GV Trương Phước Lộc Khoa CNTT-ĐH.KHTN Bài tập áp dụng Viết chương trình, cho phép người dùng • Nhập vào danh sách số nguyên • Xuất phần tử lớn mảng • Xuất tất vị trí phần tử lớn mảng • Xuất phần tử lớn thứ hai mảng • Xuất số nguyên nhỏ mảng • Xuất số nguyên đứng cuối mảng • Sắp xếp mảng giảm dần xuất mảng xếp GV Trương Phước Lộc Khoa CNTT-ĐH.KHTN Sử dụng hàm tìm kiếm ▫ Find / FindAll / FindIndex / FindLast / FindLastIndex • Các tham số: ▫ array: mảng muốn tìm kiếm ▫ Match : hàm kiểm tra điều kiện, có định dạng Predicate(Of T) GV Trương Phước Lộc Khoa CNTT-ĐH.KHTN Mảng hai chiều • Cú pháp khai báo mảng int nums[][]; int nums[,]; • Cấp phát lại số phần tử mảng nums = new int[3] nums = new int[3,4]; GV Trương Phước Lộc Khoa CNTT-ĐH.KHTN Đối tượng danh sách Một số đối tượng dùng lưu trữ danh sách • List • ArrayList • SortedList • Hashtable => Khởi tạo hàm new GV Trương Phước Lộc 10 Khoa CNTT-ĐH.KHTN Đối tượng danh sách • Thuộc tính ▫ Count: số phần tử mảng ▫ Capacity : khả chứa danh sách • Phương thức ▫ ▫ ▫ ▫ ▫ Find / FindIndex / FindLast / FindAll Add / AddRange / Insert / InsertRange Remove / RemoveAt / RemoveAll / Clear CopyTo IndexOf GV Trương Phước Lộc 11 Khoa CNTT-ĐH.KHTN Đối tượng danh sách • • • • • • • Duyệt mảng Tìm kiếm Tìm giá trị nhỏ Tính tổng mảng Chèn thêm phần tử vào vị trí cho trước Xóa phần tử vị trí cho trước Sắp xếp tăng GV Trương Phước Lộc 12 Khoa CNTT-ĐH.KHTN Câu hỏi GV Trương Phước Lộc 13