Đề Trắc Nghiệm Tin Học 11 (Kết Nối Tri Thức) Bài 25: Thực Hành Xác Định Độ Phức Tạp Thời Gian Thuật Toán

Đề Trắc Nghiệm Tin Học 11 (Kết Nối Tri Thức) Bài 25: Thực Hành Xác Định Độ Phức Tạp Thời Gian Thuật Toán tổng hợp câu hỏi trắc nghiệm chứa đựng nhiều dạng bài tập, bài thi, cũng như các câu hỏi trắc nghiệm và bài kiểm tra, trong bộ Trắc Nghiệm Tin Học 11 – Kết Nối Tri Thức. Nội dung trắc nghiệm nhấn mạnh phần kiến thức nền tảng và chuyên môn sâu của học phần này. Mọi bộ đề trắc nghiệm đều cung cấp câu hỏi, đáp án cùng hướng dẫn giải cặn kẽ. Mời bạn thử sức làm bài nhằm ôn luyện và làm vững chắc kiến thức cũng như đánh giá năng lực bản thân!

Đề 01

Đề 02

Đề 03

Đề 04

Đề 05

Đề 06

Đề 07

Đề 08

Đề 09

Đề 10

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán - Đề 01

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 1: Khi phân tích độ phức tạp thời gian của một thuật toán, tại sao chúng ta thường quan tâm đến trường hợp xấu nhất (worst-case) thay vì trường hợp tốt nhất (best-case) hoặc trung bình (average-case)?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 2: Cho đoạn mã giả sau:
```
sum = 0
for i from 1 to n:
sum = sum + i
```
Độ phức tạp thời gian của đoạn mã này theo ký hiệu Big O là gì?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 3: Cho đoạn mã giả sau:
```
for i from 1 to n:
for j from 1 to n:
print(i * j)
```
Độ phức tạp thời gian của đoạn mã này theo ký hiệu Big O là gì?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 4: Thuật toán tìm kiếm nhị phân (Binary Search) trên một mảng đã được sắp xếp có độ phức tạp thời gian là O(log n). Điều này có ý nghĩa gì khi kích thước mảng (n) tăng lên?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 5: Xét thuật toán Linear Search (tìm kiếm tuần tự) trên một mảng có n phần tử. Trong trường hợp tốt nhất, phần tử cần tìm nằm ở đâu?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 6: Độ phức tạp thời gian trong trường hợp xấu nhất của thuật toán Linear Search trên mảng có n phần tử là gì?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 7: Thuật toán sắp xếp Selection Sort (sắp xếp chọn) hoạt động bằng cách lặp đi lặp lại việc tìm phần tử nhỏ nhất trong phần chưa được sắp xếp của mảng và đưa nó về đúng vị trí. Độ phức tạp thời gian trong trường hợp xấu nhất của Selection Sort trên mảng n phần tử là gì?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 8: Điều gì xảy ra với thời gian chạy của một thuật toán có độ phức tạp O(n^2) khi kích thước dữ liệu đầu vào (n) tăng gấp đôi?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 9: Cho đoạn mã giả sau:
```
count = 0
if condition:
for i from 1 to n:
count = count + 1
else:
count = 10
```
Với n rất lớn, độ phức tạp thời gian của đoạn mã này trong trường hợp xấu nhất là gì?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 10: Thuật toán Bubble Sort (sắp xếp nổi bọt) có độ phức tạp thời gian trong trường hợp xấu nhất là O(n^2). Trường hợp tốt nhất của Bubble Sort xảy ra khi nào và độ phức tạp thời gian trong trường hợp đó là gì?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 11: Cho đoạn mã giả sau:
```
for i from 1 to n:
for j from 1 to 100:
print(i + j)
```
Độ phức tạp thời gian của đoạn mã này theo ký hiệu Big O là gì?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 12: Một thuật toán có độ phức tạp thời gian là O(n log n). Nếu với n = 1000, thuật toán chạy mất 1 giây, ước tính thời gian chạy khi n = 1000000 (1 triệu) là bao nhiêu? (Gợi ý: log₂1000 ≈ 10, log₂1000000 ≈ 20)

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 13: Thuật toán nào trong các thuật toán sau có độ phức tạp thời gian trong trường hợp xấu nhất là O(n^2)?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 14: Khi so sánh hai thuật toán A có độ phức tạp O(n) và thuật toán B có độ phức tạp O(n^2) cho cùng một bài toán, điều gì có khả năng xảy ra nhất khi kích thước dữ liệu đầu vào (n) rất lớn?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 15: Cho đoạn mã giả sau:
```
for i from 1 to n/2:
print(i)
```
Độ phức tạp thời gian của đoạn mã này theo ký hiệu Big O là gì?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 16: Cho đoạn mã giả sau:
```
for i from 1 to n:
for j from i to n:
print(i + j)
```
Độ phức tạp thời gian của đoạn mã này theo ký hiệu Big O là gì?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 17: Phát biểu nào sau đây là ĐÚNG về mối quan hệ giữa độ phức tạp thời gian O(n) và O(n^2)?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 18: Khi phân tích một thuật toán, chúng ta thường bỏ qua các hằng số và các số hạng bậc thấp trong biểu thức thời gian chạy. Ví dụ, nếu thời gian chạy là 3n^2 + 5n + 10, tại sao chúng ta lại biểu diễn độ phức tạp là O(n^2)?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 19: Một thuật toán thực hiện 1000 phép tính độc lập với kích thước đầu vào n. Độ phức tạp thời gian của thuật toán này là gì?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 20: Cho đoạn mã giả sau:
```
result = 0
for i from 1 to n:
for j from 1 to i:
result = result + 1
```
Độ phức tạp thời gian của đoạn mã này theo ký hiệu Big O là gì?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 21: Thuật toán nào sau đây thường được coi là hiệu quả nhất (có độ phức tạp thấp nhất) trong việc tìm kiếm một phần tử trong một mảng đã được sắp xếp?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 22: Một thuật toán có độ phức tạp O(log n). Điều này thường xuất hiện trong các thuật toán nào?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 23: Giả sử một thuật toán sắp xếp có độ phức tạp O(n log n). Nếu với n = 1000, thuật toán chạy mất 1 giây. Ước tính thời gian chạy khi n = 2000 là bao nhiêu?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 24: Cho đoạn mã giả sau:
```
count = 0
for i from 1 to n:
for j from 1 to i * i:
count = count + 1
```
Độ phức tạp thời gian của đoạn mã này theo ký hiệu Big O là gì?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 25: Tại sao việc xác định độ phức tạp thời gian của thuật toán lại quan trọng trong lập trình?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 26: Cho đoạn mã giả sau:
```
function process(n):
if n <= 10: print("Small") else: for i from 1 to n: print("Large") ``` Độ phức tạp thời gian của hàm `process(n)` theo ký hiệu Big O là gì?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 27: Thuật toán Bubble Sort (sắp xếp nổi bọt) và Selection Sort (sắp xếp chọn) đều có độ phức tạp thời gian trong trường hợp xấu nhất là O(n^2). Tuy nhiên, trong thực tế, thuật toán nào thường có xu hướng chạy nhanh hơn một chút trên các bộ dữ liệu ngẫu nhiên và tại sao?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 28: Cho đoạn mã giả sau:
```
function process_array(arr):
n = length(arr)
if n > 1000:
for i from 1 to n:
print(arr[i])
else:
for i from 1 to n:
for j from 1 to n:
print(arr[i] + arr[j])
```
Độ phức tạp thời gian của hàm `process_array(arr)` theo ký hiệu Big O là gì?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 29: Giả sử bạn có một bộ dữ liệu rất lớn và cần thực hiện một thao tác có độ phức tạp thời gian là O(n^3). Điều này có ý nghĩa gì về tính khả thi của việc chạy thuật toán này trên bộ dữ liệu đó?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 01

Câu 30: Trong phân tích độ phức tạp, đâu là ký hiệu Big O thể hiện hiệu suất tốt nhất (nhanh nhất khi n lớn)?

Xem kết quả

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán - Đề 02

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 1: Khái niệm 'độ phức tạp thời gian' của một thuật toán (time complexity) chủ yếu đo lường điều gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 2: Ký hiệu Big O (ví dụ: O(n), O(n^2), O(log n)) trong phân tích độ phức tạp thời gian biểu thị điều gì?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 3: Xem xét đoạn mã giả sau:
```
function processArray(arr):
n = length(arr)
sum = 0
for i from 0 to n-1:
sum = sum + arr[i]
return sum
```
Độ phức tạp thời gian của đoạn mã này là bao nhiêu?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 4: Xem xét đoạn mã giả sau:
```
function printPairs(arr):
n = length(arr)
for i from 0 to n-1:
for j from 0 to n-1:
print(arr[i], arr[j])
```
Độ phức tạp thời gian của đoạn mã này là bao nhiêu?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 5: Xem xét đoạn mã giả sau:
```
function findMax(arr):
n = length(arr)
if n == 0:
return null
max_val = arr[0]
for i from 1 to n-1:
if arr[i] > max_val:
max_val = arr[i]
return max_val
```
Trong trường hợp xấu nhất, độ phức tạp thời gian của thuật toán tìm giá trị lớn nhất này là bao nhiêu?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 6: Thuật toán tìm kiếm tuần tự (Linear Search) trên một mảng có kích thước n. Độ phức tạp thời gian trong trường hợp tốt nhất (best-case) là bao nhiêu?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 7: Thuật toán tìm kiếm tuần tự (Linear Search) trên một mảng có kích thước n. Độ phức tạp thời gian trong trường hợp xấu nhất (worst-case) là bao nhiêu?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 8: Thuật toán sắp xếp chọn (Selection Sort) trên một mảng có kích thước n. Độ phức tạp thời gian trong trường hợp xấu nhất là bao nhiêu?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 9: Thuật toán sắp xếp nổi bọt (Bubble Sort) trên một mảng có kích thước n. Độ phức tạp thời gian trong trường hợp xấu nhất là bao nhiêu?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 10: Thuật toán sắp xếp nổi bọt (Bubble Sort) trên một mảng có kích thước n. Độ phức tạp thời gian trong trường hợp tốt nhất (best-case) là bao nhiêu?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 11: Xem xét đoạn mã giả sau:
```
function example(n):
count = 0
for i from 1 to n:
for j from 1 to i:
count = count + 1
```
Độ phức tạp thời gian của đoạn mã này là bao nhiêu?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 12: Xem xét đoạn mã giả sau:
```
function process(n):
k = 1
while k < n: print(k) k = k * 2 ``` Độ phức tạp thời gian của đoạn mã này là bao nhiêu?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 13: Giả sử thuật toán A có độ phức tạp O(n) và thuật toán B có độ phức tạp O(n^2). Khi kích thước dữ liệu đầu vào n rất lớn, phát biểu nào sau đây là đúng nhất về hiệu suất của hai thuật toán?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 14: Nếu một thuật toán có độ phức tạp thời gian O(n^3) và mất 1 giây để xử lý dữ liệu có kích thước n=100. Ước tính thời gian cần thiết để xử lý dữ liệu có kích thước n=200 là bao nhiêu?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 15: Nếu một thuật toán có độ phức tạp thời gian O(n) và mất 1 giây để xử lý dữ liệu có kích thước n=1000. Ước tính thời gian cần thiết để xử lý dữ liệu có kích thước n=10000 là bao nhiêu?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 16: Trong phân tích độ phức tạp thời gian bằng ký hiệu Big O, khi biểu thức thời gian là một đa thức (ví dụ: 5n^2 + 3n + 10), ta chỉ giữ lại thành phần nào để xác định độ phức tạp?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 17: Độ phức tạp thời gian O(log n) thường xuất hiện trong các thuật toán sử dụng kỹ thuật nào?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 18: Độ phức tạp thời gian O(1) có ý nghĩa gì?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 19: Sắp xếp các độ phức tạp thời gian sau theo thứ tự tăng dần về tốc độ tăng trưởng khi n rất lớn: O(n^2), O(log n), O(n), O(1).

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 20: Tại sao việc phân tích độ phức tạp thời gian lại quan trọng trong lập trình, đặc biệt với các bài toán lớn?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 21: Một thuật toán bao gồm hai phần liên tiếp. Phần thứ nhất có độ phức tạp O(n^2), phần thứ hai có độ phức tạp O(n). Độ phức tạp thời gian tổng thể của thuật toán này là bao nhiêu?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 22: Xem xét đoạn mã giả sau:
```
function anotherExample(n):
sum1 = 0
for i from 1 to n:
sum1 = sum1 + i
sum2 = 0
for j from 1 to n:
sum2 = sum2 + j*2
```
Độ phức tạp thời gian của đoạn mã này là bao nhiêu?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 23: Khi phân tích độ phức tạp thời gian của thuật toán sắp xếp chọn (Selection Sort), tại sao chúng ta thường nói độ phức tạp là O(n^2) cho cả trường hợp tốt nhất, trung bình và xấu nhất?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 24: Cho một đoạn mã có độ phức tạp thời gian là O(n). Nếu chạy đoạn mã này với n = 1000 mất 0.1 giây, ước tính thời gian chạy khi n = 5000 là bao nhiêu?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 25: Xem xét đoạn mã giả sau:
```
function trickyLoop(n):
count = 0
i = 1
while i <= n: count = count + 1 i = i * 3 ``` Độ phức tạp thời gian của đoạn mã này là bao nhiêu?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 26: Trong phân tích thuật toán, trường hợp 'trung bình' (average-case) của độ phức tạp thời gian mô tả điều gì?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 27: Thuật toán nào trong số các thuật toán sắp xếp đơn giản sau đây có độ phức tạp thời gian tốt nhất trong trường hợp mảng đã được sắp xếp?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 28: Xem xét đoạn mã giả sau:
```
function processMatrix(matrix):
rows = matrix.height
cols = matrix.width
sum = 0
for i from 0 to rows-1:
for j from 0 to cols-1:
sum = sum + matrix[i][j]
```
Nếu ma trận có kích thước m x n (rows = m, cols = n), độ phức tạp thời gian của đoạn mã này là bao nhiêu?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 29: Tại sao các hằng số và các thành phần bậc thấp hơn thường bị bỏ qua trong phân tích độ phức tạp Big O?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 02

Câu 30: Một thuật toán tìm kiếm nhị phân (Binary Search) trên một mảng đã sắp xếp có kích thước n. Độ phức tạp thời gian trong trường hợp xấu nhất là bao nhiêu?

Xem kết quả

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán - Đề 03

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 1: Khi phân tích độ phức tạp thời gian của một thuật toán, chúng ta thường quan tâm đến trường hợp nào nhất để đánh giá hiệu quả của nó với dữ liệu lớn?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 2: Cho đoạn mã giả sau:
```
sum = 0
for i from 1 to n:
sum = sum + i
```
Độ phức tạp thời gian của đoạn mã này theo ký hiệu O lớn là bao nhiêu?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 3: Thuật toán tìm kiếm tuần tự (Linear Search) trên một mảng có kích thước n. Nếu phần tử cần tìm nằm ở vị trí cuối cùng của mảng, thì độ phức tạp thời gian của thuật toán trong trường hợp này là gì?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 4: Thuật toán sắp xếp chọn (Selection Sort) hoạt động bằng cách lặp đi lặp lại việc tìm phần tử nhỏ nhất trong phần chưa được sắp xếp của mảng và đưa nó về đúng vị trí. Tại sao thuật toán này có độ phức tạp thời gian là O(n^2) trong trường hợp xấu nhất?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 5: Cho hai thuật toán: Thuật toán A có độ phức tạp O(n^2) và Thuật toán B có độ phức tạp O(n log n). Khi kích thước dữ liệu n rất lớn, nhận định nào sau đây là đúng về hiệu quả thời gian chạy của hai thuật toán?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 6: Độ phức tạp thời gian của thuật toán sắp xếp nổi bọt (Bubble Sort) trong trường hợp mảng đầu vào đã được sắp xếp hoàn toàn là gì?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 7: Cho đoạn mã giả sau:
```
count = 0
for i from 1 to n:
for j from 1 to n:
count = count + 1
```
Độ phức tạp thời gian của đoạn mã này là bao nhiêu?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 8: Ký hiệu O lớn (Big O notation) mô tả khía cạnh nào của hiệu quả thuật toán?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 9: Một thuật toán có độ phức tạp thời gian O(1). Điều này có nghĩa là gì?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 10: Giả sử thuật toán sắp xếp chọn (Selection Sort) mất 4 giây để sắp xếp một mảng có 2000 phần tử. Ước tính thời gian cần thiết để sắp xếp một mảng có 4000 phần tử bằng cùng thuật toán này là bao nhiêu?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 11: Cho đoạn mã giả sau:
```
result = 0
i = 1
while i < n: result = result + 1 i = i * 2 ``` Độ phức tạp thời gian của đoạn mã này theo ký hiệu O lớn là bao nhiêu?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 12: Khi so sánh thuật toán tìm kiếm tuần tự (Linear Search - O(n)) và thuật toán tìm kiếm nhị phân (Binary Search - O(log n)) trên một mảng đã sắp xếp, nhận định nào sau đây là đúng?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 13: Cho đoạn mã giả sau:
```
for i from 1 to n:
for j from i to n:
// Thực hiện một phép toán cơ bản
```
Độ phức tạp thời gian của đoạn mã này là bao nhiêu?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 14: Tại sao các hằng số và các số hạng bậc thấp thường bị bỏ qua khi xác định độ phức tạp thời gian bằng ký hiệu O lớn?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 15: Một thuật toán xử lý dữ liệu mất 0.1 giây với n=1000. Nếu thuật toán này có độ phức tạp O(n), ước tính nó sẽ mất bao lâu để xử lý n=10000?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 16: Cho đoạn mã giả sau:
```
func(n):
if n <= 1: return 1 else: return func(n-1) + func(n-1) ``` (Đây là hàm tính số Fibonacci đệ quy không tối ưu). Độ phức tạp thời gian của hàm `func(n)` này là bao nhiêu?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 17: Thuật toán nào trong số các thuật toán sắp xếp sau đây thường có độ phức tạp thời gian là O(n^2) trong trường hợp xấu nhất?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 18: Khi nói về độ phức tạp không gian (Space Complexity), O(n) nghĩa là gì?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 19: Cho đoạn mã giả sau:
```
for i from 1 to n:
for j from 1 to 100:
// Thực hiện một phép toán cơ bản
```
Độ phức tạp thời gian của đoạn mã này là bao nhiêu?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 20: Thuật toán nào sau đây là ví dụ điển hình của độ phức tạp thời gian O(1)?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 21: Một thuật toán được mô tả là có độ phức tạp thời gian O(n^3). Nếu thuật toán này mất 1 giây để xử lý dữ liệu có kích thước n=100, thì ước tính nó sẽ mất bao lâu để xử lý dữ liệu có kích thước n=200?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 22: Điều gì xảy ra với hiệu quả của thuật toán sắp xếp nổi bọt (Bubble Sort - O(n^2)) khi kích thước dữ liệu đầu vào (n) tăng lên rất lớn?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 23: Đâu là lợi ích chính của việc phân tích độ phức tạp thời gian của thuật toán?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 24: Cho đoạn mã giả sau:
```
for i from 1 to n:
// Thực hiện một phép toán cơ bản
for j from 1 to m:
// Thực hiện một phép toán cơ bản
```
Với giả định n và m là hai kích thước đầu vào độc lập, độ phức tạp thời gian của đoạn mã này là bao nhiêu?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 25: Một thuật toán có độ phức tạp O(n log n). Nếu nó mất 0.5 giây để xử lý n=1000, ước tính thời gian xử lý cho n=20000 (tăng 20 lần) là bao nhiêu? (Gợi ý: log₂(1000) ≈ 10, log₂(20000) ≈ 14.3)

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 26: Đâu là yếu tố *không* được xem xét trực tiếp khi xác định độ phức tạp thời gian của thuật toán bằng ký hiệu O lớn?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 27: Trong thuật toán sắp xếp chọn (Selection Sort), số lượng phép hoán đổi (swap) được thực hiện trong trường hợp xấu nhất là bao nhiêu?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 28: Cho đoạn mã giả sau:
```
for i from 1 to n:
for j from 1 to i:
// Thực hiện một phép toán cơ bản
```
Độ phức tạp thời gian của đoạn mã này là bao nhiêu?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 29: Mục tiêu chính của việc tối ưu hóa thuật toán về độ phức tạp thời gian là gì?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 03

Câu 30: Giả sử bạn có một danh sách N tên học sinh cần sắp xếp theo thứ tự bảng chữ cái. Nếu N rất lớn (ví dụ: vài triệu), thuật toán nào sau đây có khả năng là lựa chọn tốt nhất về mặt hiệu quả thời gian?

Xem kết quả

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán - Đề 04

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 1: Xét đoạn mã giả sau:
```
sum = 0
for i from 1 to n:
sum = sum + i
```
Đoạn mã này tính tổng các số từ 1 đến n. Độ phức tạp thời gian của đoạn mã này được biểu diễn bằng kí hiệu Big O nào?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 2: Thuật toán tìm kiếm tuần tự (Linear Search) trên một mảng có kích thước n. Trong trường hợp xấu nhất, phần tử cần tìm không có trong mảng. Độ phức tạp thời gian trong trường hợp này là bao nhiêu?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 3: Một thuật toán có độ phức tạp thời gian là O(n^2). Nếu với đầu vào có kích thước n=1000, thuật toán chạy mất 1 giây, thì ước tính với đầu vào có kích thước n=2000, thuật toán sẽ chạy mất khoảng bao lâu?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 4: Thuật toán sắp xếp chọn (Selection Sort) trên một mảng có kích thước n. Độ phức tạp thời gian của thuật toán này là bao nhiêu trong trường hợp trung bình?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 5: Xét đoạn mã giả sau:
```
count = 0
for i from 1 to n:
for j from 1 to n:
count = count + 1
```
Đoạn mã này có độ phức tạp thời gian là bao nhiêu?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 6: Thuật toán sắp xếp nổi bọt (Bubble Sort) trên một mảng có kích thước n. Trong trường hợp mảng đã được sắp xếp từ trước (trường hợp tốt nhất), độ phức tạp thời gian của thuật toán này là bao nhiêu?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 7: Khi phân tích độ phức tạp thời gian của thuật toán, kí hiệu Big O (O) thường được sử dụng để mô tả điều gì?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 8: Một thuật toán có độ phức tạp O(log n). Điều này có ý nghĩa gì về hiệu suất của thuật toán khi kích thước đầu vào n tăng lên rất lớn?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 9: Xét đoạn mã giả sau:
```
result = 0
for i from 1 to n:
for j from i to n:
result = result + 1
```
Đoạn mã này có độ phức tạp thời gian là bao nhiêu?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 10: Độ phức tạp thời gian O(1) có ý nghĩa gì?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 11: Thuật toán tìm kiếm nhị phân (Binary Search) trên một mảng đã sắp xếp có kích thước n. Độ phức tạp thời gian của thuật toán này là bao nhiêu?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 12: So sánh hai thuật toán A (độ phức tạp O(n)) và thuật toán B (độ phức tạp O(n^2)). Với kích thước đầu vào n đủ lớn, thuật toán nào sẽ có hiệu suất tốt hơn (chạy nhanh hơn)?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 13: Xét đoạn mã giả sau:
```
for i from 1 to n:
for j from 1 to 100:
// Thực hiện một phép tính O(1)
```
Đoạn mã này có độ phức tạp thời gian là bao nhiêu?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 14: Thuật toán sắp xếp nổi bọt (Bubble Sort) trên một mảng có kích thước n. Trong trường hợp xấu nhất (mảng sắp xếp ngược), độ phức tạp thời gian là bao nhiêu?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 15: Khi phân tích độ phức tạp thời gian, tại sao chúng ta thường quan tâm đến trường hợp xấu nhất (worst-case) hơn là trường hợp tốt nhất (best-case)?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 16: Xét đoạn mã giả sau:
```
void process(int n) {
if (n <= 1) return; process(n/2); process(n/2); } ``` Đây là một hàm đệ quy. Độ phức tạp thời gian của hàm này là bao nhiêu?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 17: Xét đoạn mã giả sau:
```
void do_something(int n) {
for i from 1 to n:
// Phép tính O(1)
for j from 1 to n:
// Phép tính O(1)
}
```
Đoạn mã này có độ phức tạp thời gian là bao nhiêu?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 18: Một thuật toán mất 5ms để xử lý dữ liệu có kích thước n=100. Nếu độ phức tạp của thuật toán là O(n log n), ước tính thời gian xử lý cho dữ liệu có kích thước n=10000 sẽ là bao nhiêu?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 19: Trong phân tích độ phức tạp, tại sao chúng ta thường bỏ qua các hằng số và các số hạng bậc thấp?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 20: Xét đoạn mã giả sau:
```
for i from 1 to n:
for j from 1 to i*i:
// Phép tính O(1)
```
Đoạn mã này có độ phức tạp thời gian là bao nhiêu?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 21: Thuật toán tìm kiếm tuần tự (Linear Search) trên một mảng có kích thước n. Trong trường hợp tốt nhất, phần tử cần tìm nằm ở vị trí đầu tiên. Độ phức tạp thời gian trong trường hợp này là bao nhiêu?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 22: Một thuật toán có độ phức tạp O(n log n). Thuật toán này hiệu quả hơn thuật toán O(n^2) và kém hiệu quả hơn thuật toán O(n). Phát biểu này Đúng hay Sai?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 23: Xét một đoạn mã thực hiện việc in tất cả các cặp phần tử khác nhau trong một mảng có kích thước n. Cấu trúc vòng lặp phổ biến để làm việc này là hai vòng lặp lồng nhau, mỗi vòng chạy từ 0 đến n-1, với điều kiện bỏ qua các cặp giống nhau hoặc đã xét. Độ phức tạp thời gian của đoạn mã này là bao nhiêu?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 24: Mục đích chính của việc phân tích độ phức tạp thời gian thuật toán là gì?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 25: Xét đoạn mã giả sau:
```
void process_data(int n) {
for i from 1 to n:
// Phép tính O(1)
for j from 1 to n*n:
// Phép tính O(1)
}
```
Đoạn mã này có độ phức tạp thời gian là bao nhiêu?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 26: Thuật toán sắp xếp chèn (Insertion Sort) trên một mảng có kích thước n. Trong trường hợp xấu nhất (mảng sắp xếp ngược), độ phức tạp thời gian của thuật toán này là bao nhiêu?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 27: Xét đoạn mã giả sau:
```
void process_recursive(int n) {
if (n <= 0) return; // Phép tính O(1) process_recursive(n - 1); } ``` Đoạn mã này có độ phức tạp thời gian là bao nhiêu?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 28: Khi so sánh hai thuật toán A có độ phức tạp O(n log n) và thuật toán B có độ phức tạp O(n^2), điều gì xảy ra khi kích thước đầu vào n tăng từ nhỏ đến rất lớn?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 29: Xét đoạn mã giả sau:
```
for i from 1 to 100:
for j from 1 to n:
// Phép tính O(1)
```
Đoạn mã này có độ phức tạp thời gian là bao nhiêu?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 04

Câu 30: Một thuật toán xử lý dữ liệu có kích thước n. Người ta đo được thời gian chạy T(n) và vẽ đồ thị T(n) theo n. Nếu đồ thị có dạng một đường thẳng đi qua gốc tọa độ (hoặc gần như vậy khi n lớn), thì độ phức tạp thời gian của thuật toán có khả năng là gì?

Xem kết quả

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán - Đề 05

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 1: Cho đoạn mã giả sau:
```
function TinhTong(n):
tong = 0
for i from 1 to n:
tong = tong + i
return tong
```
Độ phức tạp thời gian của hàm `TinhTong(n)` theo ký hiệu O lớn là bao nhiêu?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 2: Khi phân tích độ phức tạp thời gian của một thuật toán, ký hiệu O lớn (Big O notation) thường mô tả trường hợp nào?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 3: Cho đoạn mã giả sau:
```
function TimPhanTu(mang, gia_tri):
for i from 0 to length(mang) - 1:
if mang[i] == gia_tri:
return i
return -1
```
Nếu mảng `mang` có kích thước `n` và phần tử `gia_tri` nằm ở vị trí cuối cùng của mảng, độ phức tạp thời gian là bao nhiêu?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 4: Thuật toán tìm kiếm nhị phân (Binary Search) trên một mảng đã được sắp xếp có độ phức tạp thời gian trong trường hợp xấu nhất là O(log n). Điều này có ý nghĩa gì khi kích thước dữ liệu `n` tăng lên?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 5: Cho đoạn mã giả sau:
```
function XuLyDuLieu(n):
for i from 1 to n:
for j from 1 to n:
print(i * j)
```
Độ phức tạp thời gian của hàm `XuLyDuLieu(n)` là bao nhiêu?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 6: Nếu một thuật toán có độ phức tạp thời gian là O(n^2) và mất 1 giây để xử lý 1000 phần tử, ước tính thời gian cần thiết để xử lý 10000 phần tử là bao nhiêu?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 7: Thuật toán sắp xếp chọn (Selection Sort) có độ phức tạp thời gian trong trường hợp xấu nhất là O(n^2). Điều này có nghĩa là gì về hiệu suất của thuật toán này với dữ liệu lớn?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 8: Cho đoạn mã giả sau:
```
function HamKyBi(n):
i = 1
while i < n: print(i) i = i * 2 ``` Độ phức tạp thời gian của hàm `HamKyBi(n)` là bao nhiêu?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 9: Khi so sánh thuật toán tìm kiếm tuần tự (Linear Search) với tìm kiếm nhị phân (Binary Search) trên một mảng đã sắp xếp có kích thước `n`, nhận định nào sau đây là đúng về độ phức tạp thời gian trong trường hợp xấu nhất?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 10: Một thuật toán thực hiện các bước sau:
1. Duyệt qua toàn bộ mảng kích thước `n` một lần để tìm giá trị lớn nhất (O(n)).
2. Thực hiện 10 phép tính số học cố định (không phụ thuộc vào `n`) (O(1)).
Độ phức tạp thời gian tổng thể của thuật toán này là bao nhiêu?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 11: Cho đoạn mã giả sau:
```
function ProcessData(A, B):
n = length(A)
m = length(B)
for i from 0 to n-1:
for j from 0 to m-1:
print(A[i] + B[j])
```
Nếu `n` rất lớn và `m` rất lớn, độ phức tạp thời gian của hàm `ProcessData(A, B)` là bao nhiêu?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 12: Khi phân tích độ phức tạp của một thuật toán, hằng số và các hệ số bậc thấp thường bị bỏ qua trong ký hiệu O lớn. Ví dụ, O(2n^2 + 5n + 3) được rút gọn thành O(n^2). Tại sao lại làm như vậy?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 13: Thuật toán sắp xếp nổi bọt (Bubble Sort) có độ phức tạp thời gian trong trường hợp tốt nhất (mảng đã sắp xếp) là O(n). Tại sao lại như vậy?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 14: Cho đoạn mã giả:
```
function Example(n):
count = 0
for i from 1 to n:
for j from 1 to i:
count = count + 1
return count
```
Độ phức tạp thời gian của hàm `Example(n)` là bao nhiêu?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 15: Một thuật toán có độ phức tạp O(log n). Nếu với n = 1000, thuật toán chạy mất 10ms, thì ước tính với n = 1,000,000 (gấp 1000 lần), thuật toán sẽ chạy mất khoảng bao lâu? (Biết log2(1000) ≈ 10, log2(1000000) ≈ 20)

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 16: Thuật toán nào sau đây thường có độ phức tạp thời gian là O(1)?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 17: Khi phân tích một thuật toán đệ quy, độ phức tạp thời gian thường được biểu diễn bằng gì?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 18: Cho đoạn mã giả sau:
```
function AnotherExample(n):
for i from 1 to n:
j = 1
while j <= n: print(i * j) j = j * 2 ``` Độ phức tạp thời gian của hàm `AnotherExample(n)` là bao nhiêu?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 19: Thuật toán nào sau đây có độ phức tạp thời gian điển hình là O(n log n)?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 20: Giả sử bạn cần chọn một thuật toán để xử lý một tập dữ liệu có kích thước N rất lớn (ví dụ: N = 1 tỷ). Thuật toán nào có độ phức tạp thời gian *ít phù hợp nhất*?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 21: Cho đoạn mã giả sau:
```
function WeirdFunction(n):
if n <= 1: return 1 else: return WeirdFunction(n/2) + WeirdFunction(n/2) ``` Độ phức tạp thời gian của hàm đệ quy `WeirdFunction(n)` là bao nhiêu? (Giả sử phép chia `/` là phép chia nguyên)

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 22: Khái niệm nào sau đây mô tả tốc độ tăng trưởng của thời gian thực hiện thuật toán khi kích thước đầu vào tăng lên?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 23: Cho đoạn mã giả sau:
```
function ProcessMatrix(matrix, n):
# matrix là ma trận vuông n x n
sum = 0
for i from 0 to n-1:
sum = sum + matrix[i][i] # Duyệt đường chéo chính
return sum
```
Độ phức tạp thời gian của hàm `ProcessMatrix(matrix, n)` là bao nhiêu?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 24: Trong phân tích độ phức tạp, O(n) được gọi là độ phức tạp gì?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 25: Tại sao việc xác định độ phức tạp thời gian của thuật toán lại quan trọng trong thực tế?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 26: Cho đoạn mã giả sau:
```
function AnalyzeData(n):
total = 0
for i from 1 to 100:
total = total + i
for j from 1 to n:
total = total + j*2
return total
```
Độ phức tạp thời gian của hàm `AnalyzeData(n)` là bao nhiêu?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 27: Trong các độ phức tạp sau, độ phức tạp nào thể hiện hiệu suất tốt nhất (chạy nhanh nhất với `n` đủ lớn)?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 28: Khi một thuật toán chứa một vòng lặp `for` chạy từ 1 đến `n` và bên trong vòng lặp đó có một lời gọi hàm khác có độ phức tạp O(log n), thì độ phức tạp tổng thể của thuật toán là bao nhiêu?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 29: Cho đoạn mã giả:
```
function CompareArrays(A, B):
n = length(A)
m = length(B)
if n != m:
return False
for i from 0 to n-1:
if A[i] != B[i]:
return False
return True
```
Giả sử `n` và `m` có cùng độ lớn. Độ phức tạp thời gian của hàm `CompareArrays` trong trường hợp xấu nhất (hai mảng giống hệt nhau) là bao nhiêu?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 05

Câu 30: Trong các yếu tố sau, yếu tố nào *không* ảnh hưởng trực tiếp đến độ phức tạp thời gian lý thuyết (Big O) của một thuật toán?

Xem kết quả

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán - Đề 06

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 1: Khi phân tích độ phức tạp thời gian của một thuật toán, ký hiệu Big O (ví dụ: O(n), O(n^2), O(log n)) chủ yếu mô tả điều gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 2: Cho đoạn mã giả sau:
```
function ProcessArray(arr, n):
sum = 0
for i from 0 to n-1:
sum = sum + arr[i]
return sum
```
Độ phức tạp thời gian của hàm `ProcessArray` là bao nhiêu?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 3: Thuật toán tìm kiếm tuần tự (Linear Search) trên một mảng có kích thước n. Trong trường hợp xấu nhất, độ phức tạp thời gian của thuật toán này là bao nhiêu?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 4: Cho đoạn mã giả sau:
```
function AnalyzeData(data, n):
count = 0
for i from 0 to n-1:
for j from 0 to n-1:
if data[i] == data[j]:
count = count + 1
return count
```
Độ phức tạp thời gian của hàm `AnalyzeData` là bao nhiêu?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 5: Đối với các thuật toán sắp xếp đơn giản như Sắp xếp chọn (Selection Sort) hoặc Sắp xếp nổi bọt (Bubble Sort), độ phức tạp thời gian trong trường hợp xấu nhất và trung bình thường là bao nhiêu?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 6: Độ phức tạp thời gian O(1) có ý nghĩa gì?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 7: Khi phân tích độ phức tạp thời gian của một thuật toán, tại sao chúng ta thường chỉ quan tâm đến số hạng có bậc cao nhất và bỏ qua các hằng số cùng các số hạng bậc thấp hơn?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 8: Hai thuật toán A và B cùng giải quyết một vấn đề. Thuật toán A có độ phức tạp O(n^2), thuật toán B có độ phức tạp O(n log n). Khi kích thước dữ liệu đầu vào n rất lớn, thuật toán nào có xu hướng chạy nhanh hơn?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 9: Cho đoạn mã giả sau:
```
function Example(n):
i = 1
while i < n: print(i) i = i * 2 ``` Độ phức tạp thời gian của hàm `Example` là bao nhiêu?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 10: Thuật toán tìm kiếm nhị phân (Binary Search) trên một mảng đã được sắp xếp có kích thước n. Độ phức tạp thời gian trong trường hợp xấu nhất của thuật toán này là bao nhiêu?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 11: Cho đoạn mã giả sau:
```
function Combine(arr1, n1, arr2, n2):
// arr1 có kích thước n1, arr2 có kích thước n2
sum1 = 0
for i from 0 to n1-1:
sum1 = sum1 + arr1[i] // Vòng lặp 1

sum2 = 0
for j from 0 to n2-1:
sum2 = sum2 + arr2[j] // Vòng lặp 2

return sum1 + sum2
```
Giả sử n1 và n2 có cùng độ lớn, ký hiệu là n (n1 ≈ n2 ≈ n). Độ phức tạp thời gian của hàm `Combine` là bao nhiêu?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 12: Tại sao việc xác định độ phức tạp thời gian của thuật toán lại quan trọng đối với lập trình viên?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 13: Cho đoạn mã giả sau:
```
function PrintPairs(arr, n):
for i from 0 to n-1:
for j from i to n-1:
print(arr[i], arr[j])
```
Độ phức tạp thời gian của hàm `PrintPairs` là bao nhiêu?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 14: Nếu một thuật toán có độ phức tạp O(n), và nó mất 100 mili giây để xử lý dữ liệu có kích thước n=1000. Ước tính thời gian cần thiết để xử lý dữ liệu có kích thước n=10000 là bao nhiêu?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 15: Giả sử một thuật toán có độ phức tạp O(n^2). Nếu nó mất 1 giây để xử lý dữ liệu có kích thước n=1000. Ước tính thời gian cần thiết để xử lý dữ liệu có kích thước n=2000 là bao nhiêu?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 16: Trong phân tích độ phức tạp, 'trường hợp tốt nhất' (best case) của một thuật toán là gì?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 17: Cho đoạn mã giả sau:
```
function CheckConstant(arr, n):
if n > 0:
print(arr[0])
// Các thao tác khác không phụ thuộc vào n
result = 1 + 2
return result
```
Độ phức tạp thời gian của hàm `CheckConstant` là bao nhiêu?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 18: Đối với thuật toán tìm kiếm tuần tự (Linear Search) trên mảng kích thước n, trường hợp tốt nhất xảy ra khi nào và độ phức tạp thời gian trong trường hợp đó là bao nhiêu?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 19: Khi một thuật toán bao gồm nhiều phần có độ phức tạp khác nhau (ví dụ: một phần O(n) và một phần O(n^2) thực hiện nối tiếp nhau), độ phức tạp tổng thể của thuật toán được xác định bởi phần nào?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 20: Cho đoạn mã giả sau:
```
function ProcessMatrix(matrix, n):
// matrix là ma trận vuông n x n
total = 0
for i from 0 to n-1:
for j from 0 to n-1:
total = total + matrix[i][j]
return total
```
Độ phức tạp thời gian của hàm `ProcessMatrix` khi duyệt qua tất cả các phần tử của ma trận n x n là bao nhiêu?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 21: Thuật toán nào trong các lựa chọn sau đây thường có độ phức tạp thời gian tốt nhất (nhanh nhất) đối với các bộ dữ liệu lớn?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 22: Cho đoạn mã giả sau:
```
function PartialSum(arr, n):
sum = 0
for i from 0 to min(n-1, 100):
sum = sum + arr[i]
return sum
```
Độ phức tạp thời gian của hàm `PartialSum` là bao nhiêu?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 23: Giả sử bạn có một thuật toán O(n log n). Nếu nó xử lý n=1000 phần tử trong 10ms, ước tính thời gian để xử lý n=10000 phần tử là bao nhiêu? (Lưu ý: log(1000) ≈ 10, log(10000) ≈ 13.3)

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 24: Trong phân tích độ phức tạp, 'trường hợp xấu nhất' (worst case) của một thuật toán là gì?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 25: Cho đoạn mã giả sau:
```
function ExampleNested(n):
count = 0
for i from 1 to n:
for j from 1 to n:
for k from 1 to n:
count = count + 1
return count
```
Độ phức tạp thời gian của hàm `ExampleNested` là bao nhiêu?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 26: Khi so sánh hiệu suất của hai thuật toán có độ phức tạp O(n log n) và O(n^2), điều gì là đúng khi kích thước dữ liệu n tăng lên?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 27: Cho đoạn mã giả sau:
```
function ProcessEveryOther(arr, n):
sum = 0
for i from 0 to n-1 step 2:
sum = sum + arr[i]
return sum
```
Độ phức tạp thời gian của hàm `ProcessEveryOther` là bao nhiêu?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 28: Độ phức tạp thời gian O(n log n) thường xuất hiện trong các thuật toán loại nào?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 29: Nếu một thuật toán có độ phức tạp O(n^3) và mất 8 giây để xử lý dữ liệu có kích thước n=100. Ước tính thời gian cần thiết để xử lý dữ liệu có kích thước n=200 là bao nhiêu?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 06

Câu 30: Trong phân tích độ phức tạp thời gian, 'trường hợp trung bình' (average case) của một thuật toán là gì?

Xem kết quả

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán - Đề 07

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 1: Khi phân tích độ phức tạp thời gian của một thuật toán sử dụng ký hiệu O lớn (Big O), điều gì là mục đích chính của việc bỏ qua các hằng số nhân và các số hạng bậc thấp hơn?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 2: Xét đoạn mã giả sau:
```
function example1(n):
count = 0
for i from 1 to n:
count = count + 1
return count
```
Độ phức tạp thời gian của hàm `example1(n)` là gì?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 3: Xét đoạn mã giả sau:
```
function example2(n):
count = 0
for i from 1 to n:
for j from 1 to n:
count = count + 1
return count
```
Độ phức tạp thời gian của hàm `example2(n)` là gì?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 4: Xét đoạn mã giả sau:
```
function example3(n):
count = 0
for i from 1 to n:
for j from i to n:
count = count + 1
return count
```
Độ phức tạp thời gian của hàm `example3(n)` là gì?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 5: Xét đoạn mã giả sau:
```
function example4(n):
if n <= 1: return print('Hello') example4(n / 2) ``` Giả sử phép chia `n/2` làm tròn xuống. Độ phức tạp thời gian của hàm đệ quy `example4(n)` dựa trên số lần gọi hàm đệ quy là gì?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 6: Một thuật toán có độ phức tạp thời gian O(n log n). Nếu thuật toán này xử lý dữ liệu có kích thước n=1000 trong khoảng 0.1 giây, ước tính thời gian cần thiết để xử lý dữ liệu có kích thước n=10000 sẽ là bao nhiêu?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 7: Thuật toán nào sau đây *thường* có độ phức tạp thời gian tốt nhất trong trường hợp xấu nhất để tìm kiếm một phần tử trong một mảng đã được sắp xếp?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 8: Thuật toán nào sau đây *thường* có độ phức tạp thời gian O(n^2) trong trường hợp xấu nhất để sắp xếp một mảng?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 9: Xét đoạn mã giả sau:
```
function example5(n):
if n <= 0: return for i from 1 to n: print('Step') example5(n - 1) ``` Độ phức tạp thời gian của hàm đệ quy `example5(n)` dựa trên số lần in 'Step' là gì?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 10: Thuật toán nào có độ phức tạp thời gian O(1)?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 11: Khi so sánh thuật toán A có độ phức tạp O(n) và thuật toán B có độ phức tạp O(n^2), điều gì xảy ra khi kích thước đầu vào n trở nên rất lớn?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 12: Xét đoạn mã giả sau:
```
function example6(n):
sum = 0
i = 1
while i < n: sum = sum + i i = i * 2 return sum ``` Độ phức tạp thời gian của hàm `example6(n)` là gì?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 13: Thuật toán sắp xếp nào sau đây có độ phức tạp thời gian O(n log n) trong trường hợp xấu nhất?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 14: Giả sử một thuật toán có độ phức tạp thời gian là O(n³). Nếu thuật toán này mất 1 giây để xử lý dữ liệu có kích thước n=100, ước tính thời gian cần thiết để xử lý dữ liệu có kích thước n=200 là bao nhiêu?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 15: Trường hợp tốt nhất (Best Case) của một thuật toán là gì?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 16: Độ phức tạp thời gian của thuật toán Sắp xếp Nổi bọt (Bubble Sort) trong trường hợp mảng *đã được sắp xếp* là gì?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 17: Xét đoạn mã giả sau:
```
function example7(n):
sum = 0
for i from 1 to n:
sum = sum + i
for j from 1 to n * n:
sum = sum + j
return sum
```
Độ phức tạp thời gian của hàm `example7(n)` là gì?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 18: Tại sao độ phức tạp thời gian O(log n) được coi là rất hiệu quả, đặc biệt với đầu vào lớn?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 19: Khi phân tích độ phức tạp thời gian, 'trường hợp xấu nhất' (Worst Case) thường được sử dụng nhất vì lý do nào sau đây?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 20: Xét đoạn mã giả sau:
```
function example8(A, n):
# A là một mảng kích thước n x n
sum = 0
for i from 0 to n-1:
for j from 0 to n-1:
sum = sum + A[i][j]
return sum
```
Độ phức tạp thời gian của hàm `example8(A, n)` là gì?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 21: Sắp xếp các độ phức tạp thời gian sau theo thứ tự từ hiệu quả nhất đến kém hiệu quả nhất (tốc độ tăng trưởng chậm nhất đến nhanh nhất) khi n rất lớn: O(n^2), O(log n), O(n), O(1), O(n log n).

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 22: Một thuật toán tìm kiếm tuần tự (Linear Search) trên mảng kích thước n có độ phức tạp thời gian O(n) trong trường hợp xấu nhất. Nếu mỗi phép so sánh mất 1 micro giây, và bạn có 1 giây (1,000,000 micro giây), kích thước mảng (n) lớn nhất mà thuật toán này có thể xử lý trong 1 giây trong trường hợp xấu nhất là bao nhiêu?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 23: Một thuật toán sắp xếp (ví dụ: Selection Sort) có độ phức tạp thời gian O(n^2). Nếu mỗi phép so sánh/hoán đổi cơ bản mất 1 micro giây, và bạn có 1 giây (1,000,000 micro giây), ước tính kích thước mảng (n) lớn nhất mà thuật toán này có thể xử lý trong 1 giây là bao nhiêu?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 24: Xét đoạn mã giả sau:
```
function example9(n):
count = 0
i = n
while i > 0:
count = count + 1
i = i / 2 # Giả sử phép chia làm tròn xuống
return count
```
Độ phức tạp thời gian của hàm `example9(n)` là gì?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 25: Độ phức tạp thời gian O(n log n) thường xuất hiện trong các thuật toán nào?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 26: Xét đoạn mã giả sau:
```
function example10(n):
total = 0
for i from 1 to 100:
for j from 1 to n:
total = total + i * j
return total
```
Độ phức tạp thời gian của hàm `example10(n)` là gì?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 27: Tại sao việc phân tích độ phức tạp thời gian lại quan trọng trong khoa học máy tính?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 28: Xét đoạn mã giả sau:
```
function example11(n):
count = 0
i = 1
while i * i <= n: count = count + 1 i = i + 1 return count ``` Độ phức tạp thời gian của hàm `example11(n)` là gì?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 29: Phát biểu nào sau đây là ĐÚNG khi nói về mối quan hệ giữa độ phức tạp thời gian và hiệu suất thực tế của thuật toán?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 07

Câu 30: Xét đoạn mã giả sau:
```
function example12(n):
count = 0
if n > 1000:
for i from 1 to n:
count = count + 1
else:
for i from 1 to 100:
count = count + 1
return count
```
Độ phức tạp thời gian của hàm `example12(n)` là gì?

Xem kết quả

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán - Đề 08

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 1: Phân tích đoạn mã giả sau:
`function TongMang(A, n):`
` sum = 0`
` for i from 0 to n-1:`
` sum = sum + A[i]`
` return sum`
Độ phức tạp thời gian của hàm `TongMang` theo kích thước mảng `n` là gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 2: Phân tích đoạn mã giả sau:
`function TimCapTongBangK(A, n, K):`
` for i from 0 to n-1:`
` for j from 0 to n-1:`
` if A[i] + A[j] == K:`
` return (i, j)`
` return (-1, -1)`
Độ phức tạp thời gian của hàm `TimCapTongBangK` trong trường hợp xấu nhất là gì?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 3: Phân tích đoạn mã giả sau:
`function DemSoLanChia2(n):`
` count = 0`
` while n > 1:`
` n = n / 2`
` count = count + 1`
` return count`
Độ phức tạp thời gian của hàm `DemSoLanChia2` là gì?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 4: Thuật toán tìm kiếm tuần tự (Linear Search) trên một mảng có kích thước `n`. Trong trường hợp xấu nhất, phần tử cần tìm nằm ở vị trí nào hoặc không có trong mảng? Điều này dẫn đến độ phức tạp thời gian là O(n).

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 5: Thuật toán sắp xếp chọn (Selection Sort) trên một mảng kích thước `n` luôn có độ phức tạp thời gian O(n^2) ở cả trường hợp tốt nhất, xấu nhất và trung bình. Tại sao?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 6: Khi phân tích độ phức tạp thời gian của một thuật toán, chúng ta thường quan tâm đến bậc phức tạp cao nhất (ví dụ: trong O(n^2 + n), ta lấy O(n^2)). Điều này là bởi vì:

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 7: Giả sử một thuật toán có độ phức tạp thời gian là O(n^3). Nếu chúng ta tăng kích thước đầu vào `n` lên gấp đôi, thời gian thực hiện của thuật toán sẽ tăng lên khoảng bao nhiêu lần?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 8: Phân tích đoạn mã giả sau:
`function Xuly(A, n):`
` for i from 0 to n-1:`
` print A[i]`
` for j from 0 to n-1:`
` print A[j]`
Độ phức tạp thời gian của hàm `Xuly` là gì?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 9: Phân tích đoạn mã giả sau:
`function Magic(n):`
` if n <= 1: return`
` for i from 1 to 10:`
` print i`
` Magic(n/2)`
Độ phức tạp thời gian của hàm `Magic` là gì?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 10: Thuật toán sắp xếp nổi bọt (Bubble Sort) trên một mảng kích thước `n`. Trong trường hợp tốt nhất (mảng đã được sắp xếp), độ phức tạp thời gian là O(n). Tại sao?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 11: Phân tích đoạn mã giả sau:
`function TinhToanPhucTap(n):`
` for i from 0 to n-1:`
` for j from 0 to i-1:`
` print (i, j)`
Độ phức tạp thời gian của hàm `TinhToanPhucTap` là gì?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 12: Giả sử thuật toán A có độ phức tạp O(n^2) và thuật toán B có độ phức tạp O(n log n). Đối với các bộ dữ liệu có kích thước `n` rất lớn, thuật toán nào thường được ưu tiên sử dụng và tại sao?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 13: Phân tích đoạn mã giả sau:
`function ProcessData(arr, n):`
` for i from 0 to n-1:`
` print arr[i]`
` if n > 100:`
` for j from 0 to 99:`
` print arr[j]`
Độ phức tạp thời gian của hàm `ProcessData` là gì?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 14: Trong phân tích độ phức tạp thời gian tiệm cận (Asymptotic Time Complexity), ký hiệu O lớn (Big O) thường biểu diễn điều gì?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 15: Phân tích đoạn mã giả sau:
`function CountPairs(A, n):`
` count = 0`
` for i from 0 to n-2:`
` for j from i+1 to n-1:`
` count = count + 1`
` return count`
Độ phức tạp thời gian của hàm `CountPairs` là gì?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 16: Khi so sánh thuật toán A có độ phức tạp O(n) và thuật toán B có độ phức tạp O(n^2), phát biểu nào sau đây là đúng về hiệu suất của chúng khi `n` đủ lớn?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 17: Một thuật toán có độ phức tạp O(1) có nghĩa là:

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 18: Phân tích đoạn mã giả sau:
`function Example(n):`
` for i from 1 to n:`
` print i`
` for j from 1 to 100:`
` print j`
Độ phức tạp thời gian của hàm `Example` là gì?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 19: Phân tích đoạn mã giả sau:
`function AnotherExample(n):`
` i = 1`
` while i < n:`
` print i`
` i = i * 2`
Độ phức tạp thời gian của hàm `AnotherExample` là gì?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 20: Trong thuật toán sắp xếp nổi bọt (Bubble Sort), trường hợp nào được coi là trường hợp xấu nhất về thời gian thực hiện?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 21: Phân tích đoạn mã giả sau:
`function Calculate(n):`
` result = 0`
` for i from 0 to n*n - 1:`
` result = result + i`
` return result`
Độ phức tạp thời gian của hàm `Calculate` là gì?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 22: Độ phức tạp O(log n) thường xuất hiện trong các thuật toán nào?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 23: Phân tích đoạn mã giả sau:
`function YetAnotherExample(n):`
` sum = 0`
` for i from 0 to n-1:`
` for j from 0 to 9:`
` sum = sum + i * j`
` return sum`
Độ phức tạp thời gian của hàm `YetAnotherExample` là gì?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 24: Phân tích đoạn mã giả sau:
`function ComplexFunction(n):`
` for i from 0 to n-1:`
` print i`
` for j from 0 to n-1:`
` for k from 0 to n-1:`
` print (j, k)`
Độ phức tạp thời gian của hàm `ComplexFunction` là gì?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 25: Giả sử bạn có hai hàm: `HamA(n)` có độ phức tạp O(n) và `HamB(m)` có độ phức tạp O(m^2). Nếu bạn gọi `HamA(n)` rồi sau đó gọi `HamB(n)` (với m=n), độ phức tạp tổng thể sẽ là gì?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 26: Ý nghĩa của việc phân tích độ phức tạp thời gian của thuật toán là gì?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 27: Phân tích đoạn mã giả sau:
`function DoSomething(n):`
` i = n`
` while i > 0:`
` print i`
` i = i - 1`
` for j from 1 to 5:`
` print j`
Độ phức tạp thời gian của hàm `DoSomething` là gì?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 28: Phân tích đoạn mã giả sau:
`function AnalyzeMe(n):`
` for i from 0 to n-1:`
` for j from 0 to 1000:`
` print (i, j)`
Độ phức tạp thời gian của hàm `AnalyzeMe` là gì?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 29: Tại sao việc hiểu độ phức tạp thời gian lại quan trọng khi thiết kế thuật toán?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 08

Câu 30: Phân tích đoạn mã giả sau:
`function MysteryLoop(n):`
` i = 0`
` while i < n:`
` print i`
` i = i + 3`
Độ phức tạp thời gian của hàm `MysteryLoop` là gì?

Xem kết quả

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán - Đề 09

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 1: Khi phân tích độ phức tạp thời gian của một thuật toán bằng ký hiệu O lớn (Big O), chúng ta quan tâm chủ yếu đến yếu tố nào khi kích thước đầu vào (n) rất lớn?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 2: Xét đoạn mã giả sau:
```
function Example(n):
sum = 0
for i from 1 to n:
sum = sum + i
return sum
```
Độ phức tạp thời gian của hàm `Example(n)` là gì?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 3: Xét đoạn mã giả sau:
```
function NestedExample(n):
count = 0
for i from 1 to n:
for j from 1 to n:
count = count + 1
return count
```
Độ phức tạp thời gian của hàm `NestedExample(n)` là gì?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 4: Thuật toán tìm kiếm tuần tự (Linear Search) trong một mảng gồm n phần tử có độ phức tạp thời gian trong trường hợp xấu nhất là O(n). Trường hợp xấu nhất này xảy ra khi nào?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 5: Một thuật toán có độ phức tạp thời gian là O(n^2). Nếu với đầu vào có kích thước n = 100, thuật toán chạy mất khoảng 10 mili giây. Ước tính thời gian chạy của thuật toán này với đầu vào có kích thước n = 1000 là bao nhiêu?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 6: Độ phức tạp thời gian O(log n) thường xuất hiện trong các thuật toán nào?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 7: So sánh hai thuật toán A có độ phức tạp O(n) và thuật toán B có độ phức tạp O(n log n). Khi kích thước đầu vào n rất lớn, thuật toán nào thường hiệu quả hơn (chạy nhanh hơn)?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 8: Xét đoạn mã giả sau:
```
function AnotherExample(n):
for i from 1 to n:
// Các thao tác có độ phức tạp O(1)
for j from 1 to n*n:
// Các thao tác có độ phức tạp O(1)
```
Độ phức tạp thời gian tổng thể của hàm `AnotherExample(n)` là gì?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 9: Thuật toán sắp xếp chọn (Selection Sort) hoạt động bằng cách lặp đi lặp lại việc tìm phần tử nhỏ nhất (hoặc lớn nhất) trong phần chưa được sắp xếp của mảng và hoán đổi nó với phần tử ở vị trí đầu tiên của phần chưa được sắp xếp đó. Thao tác nào trong Selection Sort đóng góp chính vào độ phức tạp O(n^2) của nó?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 10: Độ phức tạp thời gian O(1) có ý nghĩa là gì?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 11: Xét đoạn mã giả:
```
function Power(base, exp):
if exp == 0:
return 1
else:
return base * Power(base, exp - 1)
```
Độ phức tạp thời gian của hàm đệ quy `Power(base, exp)` theo `exp` là gì?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 12: Thuật toán sắp xếp nổi bọt (Bubble Sort) có độ phức tạp thời gian trong trường hợp tốt nhất (khi mảng đã sắp xếp) là gì?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 13: Khi so sánh O(n) và O(n^2), tại sao O(n^2) lại kém hiệu quả hơn đáng kể so với O(n) khi n lớn?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 14: Xét đoạn mã giả sau:
```
function ProcessArray(arr, n):
max_val = arr[0]
for i from 1 to n-1:
if arr[i] > max_val:
max_val = arr[i]
// Một số thao tác khác không phụ thuộc vào n
return max_val
```
Độ phức tạp thời gian của hàm `ProcessArray(arr, n)` là gì?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 15: Một thuật toán cần thực hiện N phép toán cơ bản để xử lý đầu vào có kích thước n. Nếu N = 5n^3 + 2n^2 + 100. Khi sử dụng ký hiệu O lớn, độ phức tạp thời gian của thuật toán này là gì?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 16: Đối với thuật toán tìm kiếm tuần tự (Linear Search), độ phức tạp thời gian trong trường hợp tốt nhất là O(1). Trường hợp tốt nhất này xảy ra khi nào?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 17: Tại sao khi phân tích độ phức tạp bằng ký hiệu O lớn, chúng ta thường bỏ qua các hằng số nhân?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 18: Sắp xếp các độ phức tạp thời gian sau theo thứ tự tăng dần về tốc độ tăng trưởng (từ chậm nhất đến nhanh nhất): O(n), O(log n), O(n^2), O(1).

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 19: Xét đoạn mã giả sau:
```
function ExampleLoop(n):
i = 1
while i < n: // Các thao tác có độ phức tạp O(1) i = i * 2 ``` Độ phức tạp thời gian của hàm `ExampleLoop(n)` là gì?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 20: Nếu một thuật toán có độ phức tạp O(n log n) chạy mất 1 giây với n = 1000. Ước tính thời gian chạy của thuật toán này với n = 1000000?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 21: Thuật toán sắp xếp nổi bọt (Bubble Sort) có độ phức tạp thời gian trong trường hợp xấu nhất là O(n^2). Trường hợp xấu nhất này xảy ra khi nào?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 22: Xét đoạn mã giả sau:
```
function ExampleConditional(n):
if n > 1000:
for i from 1 to n*n:
// O(1) operations
else:
for i from 1 to n:
// O(1) operations
```
Độ phức tạp thời gian của hàm `ExampleConditional(n)` là gì?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 23: Trong phân tích độ phức tạp, tại sao chúng ta thường quan tâm đến trường hợp xấu nhất (worst-case) của thuật toán?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 24: Xét đoạn mã giả sau:
```
function ComplexFunction(n):
for i from 1 to n:
// O(1) operations
for j from 1 to n:
for k from 1 to n:
// O(1) operations
```
Độ phức tạp thời gian của hàm `ComplexFunction(n)` là gì?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 25: Thuật toán sắp xếp chọn (Selection Sort) có độ phức tạp thời gian trong trường hợp tốt nhất là gì?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 26: Giả sử bạn có hai thuật toán để giải cùng một bài toán. Thuật toán A có độ phức tạp O(n^2) và thuật toán B có độ phức tạp O(n log n). Với đầu vào kích thước N = 10^6, thuật toán nào có khả năng hoàn thành trong thời gian hợp lý (ví dụ: vài giây đến vài phút) trên máy tính hiện đại?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 27: Xét đoạn mã giả sau:
```
function AnalyzeData(n):
if n < 10: // O(1) operations else: for i from 1 to n: for j from 1 to 100: // O(1) operations ``` Độ phức tạp thời gian của hàm `AnalyzeData(n)` là gì?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 28: Thuật toán sắp xếp nào trong các lựa chọn dưới đây *không* có độ phức tạp thời gian trường hợp xấu nhất là O(n^2)?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 29: Nếu một thuật toán cần thực hiện số phép toán là T(n) = n * (n - 1) / 2. Khi biểu diễn bằng ký hiệu O lớn, độ phức tạp thời gian của thuật toán này là gì?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 09

Câu 30: Độ phức tạp thời gian O(n!) (giai thừa) và O(2^n) (hàm mũ) được coi là rất kém hiệu quả. Chúng thường xuất hiện trong các bài toán có tính chất gì?

Xem kết quả

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán - Đề 10

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 1: Khi phân tích độ phức tạp thời gian của một thuật toán, ký hiệu O lớn (Big O notation) thường được sử dụng để mô tả điều gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 2: Xét đoạn mã giả sau:
```
function process(n):
sum = 0
for i from 1 to n:
sum = sum + i
return sum
```
Độ phức tạp thời gian của hàm `process(n)` là bao nhiêu?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 3: Xét đoạn mã giả sau:
```
function analyze(n):
count = 0
for i from 1 to n:
for j from 1 to n:
count = count + 1
return count
```
Độ phức tạp thời gian của hàm `analyze(n)` là bao nhiêu?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 4: Xét đoạn mã giả sau:
```
function calculate(n):
result = 0
for i from 1 to n:
for j from i to n:
result = result + 1
return result
```
Độ phức tạp thời gian của hàm `calculate(n)` là bao nhiêu?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 5: Một thuật toán tìm kiếm trong một mảng đã được sắp xếp bằng cách liên tục chia đôi phạm vi tìm kiếm. Độ phức tạp thời gian trong trường hợp xấu nhất của thuật toán này là gì?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 6: Thuật toán Sắp xếp chọn (Selection Sort) có độ phức tạp thời gian trong trường hợp xấu nhất là O(n^2). Điều này có nghĩa là gì khi kích thước mảng đầu vào (n) tăng gấp đôi?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 7: Thuật toán Tìm kiếm tuần tự (Linear Search) trên một mảng có kích thước n. Độ phức tạp thời gian trong trường hợp tốt nhất của thuật toán này là gì?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 8: Thuật toán Sắp xếp nổi bọt (Bubble Sort) trên một mảng có kích thước n. Độ phức tạp thời gian trong trường hợp tốt nhất (khi mảng đã được sắp xếp) là gì?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 9: Thuật toán Sắp xếp nổi bọt (Bubble Sort) trên một mảng có kích thước n. Độ phức tạp thời gian trong trường hợp xấu nhất là gì?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 10: Trong phân tích độ phức tạp thời gian O lớn, chúng ta thường bỏ qua các hằng số nhân và các số hạng bậc thấp. Ví dụ, một thuật toán có số bước là 3n^2 + 2n + 5 sẽ được biểu diễn là O(n^2). Tại sao lại làm như vậy?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 11: Một thuật toán có độ phức tạp O(n log n). Nếu thuật toán này mất 0.5 giây để xử lý dữ liệu có kích thước n = 1000, ước tính thời gian cần thiết để xử lý dữ liệu có kích thước n = 2000?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 12: Độ phức tạp thời gian O(1) có nghĩa là gì?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 13: Trong các độ phức tạp thời gian sau, độ phức tạp nào là hiệu quả nhất (tốt nhất) khi kích thước dữ liệu đầu vào n rất lớn?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 14: Xét đoạn mã giả sau:
```
function doSomething(n):
for i from 1 to 100:
print(i)
for j from 1 to n:
print(j)
```
Độ phức tạp thời gian của hàm `doSomething(n)` là bao nhiêu?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 15: Xét đoạn mã giả sau:
```
function processData(arr):
n = arr.length
if n <= 1: return mid = n / 2 processData(arr[0...mid-1]) processData(arr[mid...n-1]) // some O(n) operation here to combine results ``` Đoạn mã này mô tả cấu trúc của một thuật toán 'chia để trị' (Divide and Conquer). Nếu bước kết hợp tốn O(n), độ phức tạp thời gian tổng thể của thuật toán này có thể là bao nhiêu?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 16: Khi so sánh hai thuật toán A có độ phức tạp O(n) và thuật toán B có độ phức tạp O(n^2), thuật toán nào sẽ có hiệu suất tốt hơn khi xử lý lượng dữ liệu lớn?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 17: Một thuật toán mất 10 giây để hoàn thành với dữ liệu đầu vào có kích thước n = 1000. Nếu độ phức tạp của thuật toán là O(n^3), ước tính thời gian cần thiết để hoàn thành với dữ liệu đầu vào có kích thước n = 2000?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 18: Xét đoạn mã giả sau:
```
function complexFunc(n):
sum1 = 0
for i from 1 to n:
sum1 = sum1 + i

sum2 = 0
for j from 1 to n:
for k from 1 to n:
sum2 = sum2 + j*k

return sum1 + sum2
```
Độ phức tạp thời gian của hàm `complexFunc(n)` là bao nhiêu?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 19: Thuật toán nào trong số các thuật toán sắp xếp cơ bản sau đây có độ phức tạp thời gian trong trường hợp xấu nhất là O(n^2)?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 20: Tại sao độ phức tạp thời gian trong trường hợp xấu nhất (worst-case) lại quan trọng khi đánh giá một thuật toán?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 21: Xét đoạn mã giả sau:
```
function processArray(arr):
n = arr.length
if n == 0:
return 0
if n == 1:
return arr[0]

sum = 0
for x in arr:
sum = sum + x
return sum
```
Độ phức tạp thời gian của hàm `processArray(arr)` là bao nhiêu?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 22: Một thuật toán có độ phức tạp O(log n). Nếu nó mất 0.1 giây cho n = 1024, ước tính thời gian cho n = 4096?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 23: Xét đoạn mã giả sau:
```
function find_pair(arr, target):
n = arr.length
for i from 0 to n-2:
for j from i+1 to n-1:
if arr[i] + arr[j] == target:
return true
return false
```
Độ phức tạp thời gian của hàm `find_pair(arr, target)` là bao nhiêu?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 24: Khi so sánh O(n log n) và O(n^2), thuật toán có độ phức tạp O(n log n) thường được ưa chuộng hơn cho các bài toán sắp xếp trên tập dữ liệu lớn. Điều này là do:

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 25: Xét đoạn mã giả sau:
```
function mystery(n):
i = 1
while i < n: print(i) i = i * 2 ``` Độ phức tạp thời gian của hàm `mystery(n)` là bao nhiêu?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 26: Nếu một thuật toán có độ phức tạp O(n), và mất 5 giây để xử lý 100.000 phần tử, thì ước tính thời gian cần thiết để xử lý 500.000 phần tử là bao nhiêu?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 27: Xét đoạn mã giả sau:
```
function anotherFunc(n):
for i from 1 to n:
// Một phép tính O(1) ở đây

for j from 1 to n:
for k from 1 to 10:
// Một phép tính O(1) ở đây
```
Độ phức tạp thời gian của hàm `anotherFunc(n)` là bao nhiêu?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 28: Độ phức tạp thời gian trung bình (average-case) của một thuật toán là gì?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 29: Tại sao thuật toán Tìm kiếm nhị phân (Binary Search) yêu cầu mảng đầu vào phải được sắp xếp?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 25: Thực hành xác định độ phức tạp thời gian thuật toán

Tags: Bộ đề 10

Câu 30: Xét đoạn mã giả sau:
```
function processNested(n):
count = 0
for i from 1 to n:
for j from 1 to i:
for k from 1 to 5:
count = count + 1
return count
```
Độ phức tạp thời gian của hàm `processNested(n)` là bao nhiêu?

Xem kết quả