Học Python - Bài 48 Sắp xếp mảng theo thứ tự tăng dần
DANH SÁCH TÓM TẮT:
Giới Thiệu
Khi làm việc với mảng số nguyên, một trong những bài toán cơ bản là tìm phần tử lớn nhất đầu tiên xuất hiện trong mảng và vị trí của nó. Điều này giúp chúng ta hiểu được cách truy xuất dữ liệu một cách tối ưu và ứng dụng trong nhiều bài toán thực tế.
Trong bài viết này, chúng ta sẽ viết hai chương trình Python: một cách đơn giản và một phiên bản tối ưu hóa để giải quyết bài toán này.
# Hàm tìm phần tử lớn nhất đầu tiên và vị trí của nó (cách đơn giản)
def tim_max_va_vi_tri(arr):
max_value = max(arr) # Tìm giá trị lớn nhất
vi_tri = arr.index(max_value) # Tìm vị trí đầu tiên của giá trị lớn nhất
print(f"Phần tử lớn nhất đầu tiên trong mảng: {max_value}")
print(f"Vị trí của phần tử lớn nhất: {vi_tri}")
# Nhập số lượng phần tử của mảng
n = int(input("Nhập số phần tử của mảng: "))
# Nhập các phần tử của mảng từ người dùng
danh_sach = [int(input(f"Nhập phần tử thứ {i+1}: ")) for i in range(n)]
# Gọi hàm xử lý
tim_max_va_vi_tri(danh_sach) Giải Thích:
Cách 2: Chương Trình Tối Ưu Hóa
# Hàm tìm phần tử lớn nhất đầu tiên và vị trí của nó (tối ưu hóa)
def tim_max_va_vi_tri(arr):
if not arr:
print("Mảng rỗng!")
return
max_value = arr[0] # Giả sử phần tử đầu tiên là lớn nhất
vi_tri = 0 # Lưu vị trí của phần tử lớn nhất
for i in range(1, len(arr)):
if arr[i] > max_value:
max_value = arr[i]
vi_tri = i # Cập nhật vị trí mới của phần tử lớn nhất
print(f"Phần tử lớn nhất đầu tiên trong mảng: {max_value}")
print(f"Vị trí của phần tử lớn nhất: {vi_tri}")
# Nhập số lượng phần tử của mảng
n = int(input("Nhập số phần tử của mảng: "))
# Nhập các phần tử của mảng từ người dùng
danh_sach = [int(input(f"Nhập phần tử thứ {i+1}: ")) for i in range(n)]
# Gọi hàm xử lý
tim_max_va_vi_tri(danh_sach)
Giải Thích:
So Sánh Hai Cách
| Phương pháp | Số lần duyệt mảng | Hiệu suất |
| Cách đơn giản (dùng max() và index()) | 2 lần | Chậm hơn |
| Cách tối ưu (duyệt một lần) | 1 lần | Nhanh hơn |
Ứng Dụng
Kết Luận
Cả hai cách đều có thể giải quyết bài toán tìm phần tử lớn nhất đầu tiên trong mảng và vị trí của nó. Tuy nhiên, cách tối ưu giúp chương trình chạy nhanh hơn và tiết kiệm tài nguyên hơn khi làm việc với tập dữ liệu lớn. Hãy thử nghiệm với các bộ dữ liệu khác nhau để kiểm chứng!
Khóa học Python online từ cơ bản đến nâng cao
HỌC DỄ HIỂU, ỨNG DỤNG THỰC TẾ, HỌC PHÍ CHỈ 300K/THÁNG! Chào mừng bạn đến…
Mở đầu – “Đừng để bàn phím laptop khiến bạn phát bực!” Bàn phím laptop…
Mở đầu Ổ cứng lỗi khởi động khiến máy không vào Windows là lỗi khá…
Bạn đang làm việc hoặc học tập online thì WiFi bỗng dưng biến mất, laptop…
Một ngày đẹp trời, bạn bấm nút nguồn mà chiếc máy tính Dell hay HP…
⚠️ Nỗi Đau Người Dùng: Laptop Acer Hư Giữa Chừng – Cảm Giác Bất Lực!…
This website uses cookies.