Danh sách python phức tạp về thời gian lập chỉ mục

Trong hướng dẫn này, chúng ta sẽ học cách sử dụng phương pháp list.insert[] bằng cách đưa ra các tình huống khác nhau và giải thích chi tiết bằng các chương trình ví dụ

cú pháp

Cú pháp gọi phương thức insert[] trong danh sách myList

myList.insert[index, element]

ở đâu

  • myList là một Danh sách Python
  • chèn là tên phương thức danh sách
  • chỉ mục là vị trí mà chúng ta sẽ thực hiện chèn
  • phần tử là đối tượng chúng ta chèn vào chỉ mục đã cho

phương thức insert[] sửa đổi danh sách ban đầu mà chúng ta đang gọi và trả về Không có

ví dụ

Chèn phần tử vào chỉ mục đã cho trong danh sách

Trong ví dụ này, chúng tôi sẽ lấy một danh sách các chuỗi và chèn một phần tử vào chỉ mục 2

Hình ảnh sau đây mô tả cách hoạt động của thao tác chèn. Phương thức chèn phần tử vào chỉ mục đã cho và đẩy phần tử đến vị trí tiếp theo của chúng

chủ yếu. py

myList = ['apple', 'banana', 'cherry', 'orange']
myList.insert[2, 'mango']
print[myList]
Dùng thử trực tuyến

đầu ra

['apple', 'banana', 'mango', 'cherry', 'orange']

Chèn phần tử vào đầu danh sách

Trong ví dụ này, chúng ta sẽ sử dụng phương thức insert[] để chèn phần tử vào danh sách tại vị trí bắt đầu. Tất cả các phần tử của danh sách được dịch chuyển bởi một vị trí. Chỉ số cho phần tử đầu tiên là 0 và vì vậy chúng ta sẽ chuyển 0 làm đối số đầu tiên và phần tử làm đối số thứ hai

chủ yếu. py

myList = ['apple', 'banana', 'cherry', 'orange']
myList.insert[0, 'mango']
print[myList]
Dùng thử trực tuyến

đầu ra

['mango', 'apple', 'banana', 'cherry', 'orange']

Chèn phần tử vào cuối danh sách

Trong ví dụ này, chúng ta sẽ chèn phần tử vào cuối danh sách. Kết quả sẽ tương tự như phương thức append[]

Để chèn phần tử vào cuối danh sách, chỉ mục phải được chuyển làm đối số đầu tiên sẽ là độ dài của danh sách

chủ yếu. py

myList = ['apple', 'banana', 'cherry', 'orange']
myList.insert[len[myList], 'mango']
print[myList]
Dùng thử trực tuyến

đầu ra

['apple', 'banana', 'cherry', 'orange', 'mango']

insert[] Độ phức tạp về thời gian

Độ phức tạp thời gian để chèn một phần tử vào một chỉ mục nhất định là O[n]. Điều này có nghĩa là độ phức tạp tăng tuyến tính với số phần tử trong danh sách

Phần kết luận

Trong Hướng dẫn Python này, chúng ta đã học cú pháp của danh sách. phương thức insert[] và cách sử dụng nó với sự trợ giúp của các chương trình ví dụ

Python index[] là một hàm sẵn có trong Python, tìm kiếm một phần tử đã cho từ đầu danh sách và trả về chỉ mục của lần xuất hiện đầu tiên.  

Cách tìm chỉ mục của một phần tử hoặc các mục trong danh sách

Trong bài viết này, chúng tôi sẽ đề cập đến các ví dụ khác nhau để tìm chỉ mục, chẳng hạn như

  • Tìm chỉ số của phần tử
  • Hoạt động của chỉ mục [] Với các tham số bắt đầu và kết thúc
  • Hoạt động của chỉ mục [] Chỉ với hai Tham số
  • Chỉ mục của phần tử không có trong danh sách
  • Cách sửa chỉ mục danh sách nằm ngoài phạm vi

Cú pháp của phương thức index[]

cú pháp. danh sách tên. chỉ mục [phần tử, bắt đầu, kết thúc]

Thông số.  

  • phần tử – Phần tử có chỉ số thấp nhất sẽ được trả về
  • bắt đầu [Tùy chọn] – Vị trí bắt đầu tìm kiếm
  • kết thúc [Tùy chọn] – Vị trí từ đó tìm kiếm kết thúc

Trở lại. Trả về chỉ số thấp nhất nơi phần tử xuất hiện

Lỗi. Nếu bất kỳ phần tử nào không có mặt được tìm kiếm, nó sẽ phát sinh ValueError

ví dụ 1. Tìm chỉ số của phần tử

Tìm chỉ mục của 'bat' bằng cách sử dụng chỉ mục [] trên Danh sách Python list2

Python3




# list of items

list2=

7
0
7
1
7
2
7
3
7
2
7
5
7
2
7
1
7
2
7
9
list_name.index[element, start]
0

 

list_name.index[element, start]
1

list_name.index[element, start]
2_______17_______3
7
3
list_name.index[element, start]
5

đầu ra.   

1

ví dụ 2. Hoạt động của chỉ mục [] Với các tham số bắt đầu và kết thúc

Trong ví dụ này, chúng tôi tìm thấy một phần tử trong danh sách python, chỉ mục của phần tử là 4 ở giữa chỉ mục ở vị trí thứ 4 và kết thúc bằng vị trí thứ 8.  

Python3




# list of items

list_name.index[element, start]
7_______130_______
7
0
3
0_______7_______2
3
2
7
2
3
4
7
2
3
6
7
2
3
0
7
2
3
0
7
2
3
0_______7_______2_______26_______6_______7_______2_______17_______

 

Traceback [most recent call last]:
  File "/home/b910d8dcbc0f4f4b61499668654450d2.py", line 8, in 
    print[list1.index[10]]
ValueError: 10 is not in list
8

Traceback [most recent call last]:
  File "/home/b910d8dcbc0f4f4b61499668654450d2.py", line 8, in 
    print[list1.index[10]]
ValueError: 10 is not in list
9

list_name.index[element, start]
2_______47_______1
3
6
7
2
3
6
7
2
1
2
3
4
5
IndexError: list index out of range
6
list_name.index[element, start]
5

đầu ra.  

7

ví dụ 3. Hoạt động của chỉ mục [] Chỉ với hai Tham số

Trong ví dụ này, chúng ta sẽ thấy khi truyền hai đối số trong hàm chỉ mục, đối số đầu tiên được coi là phần tử cần tìm kiếm và đối số thứ hai là chỉ mục từ nơi bắt đầu tìm kiếm.  

list_name.index[element, start]

Python3




# list of items

list_name.index[element, start]
7_______130_______
7
0
1
2
3
4
5
2_______7_______2
1
2
3
4
5
IndexError: list index out of range
6
7
2
Traceback [most recent call last]:
  File "/home/b910d8dcbc0f4f4b61499668654450d2.py", line 8, in 
    print[list1.index[10]]
ValueError: 10 is not in list
6
7
2
1
2
3
4
5
2
7
2
3
0
7
2
3
2
list_name.index[element, start]
0

 

# list of items4

# list of items5

list_name.index[element, start]
2_______47_______1
1
2
3
4
5
2
7
2
3
0
list_name.index[element, start]
5

đầu ra

3

Ví dụ 4. Chỉ mục của phần tử không có trong danh sách

Danh sách Python index[] làm tăng ValueError, khi phần tử tìm kiếm không có trong Danh sách

Python3




list22

list23

 

list_name.index[element, start]
7_______130_______
7
0
3
0_______7_______2
3
2
7
2
3
4
7
2
3
6
7
2
3
0
7
2
3
0
7
2
3
0_______7_______2_______26_______6_______7_______2_______17_______

 

7
05

list_name.index[element, start]
2_______47_______1
7
08
list_name.index[element, start]
5

đầu ra.  

Traceback [most recent call last]:
  File "/home/b910d8dcbc0f4f4b61499668654450d2.py", line 8, in 
    print[list1.index[10]]
ValueError: 10 is not in list

Ví dụ 5. Cách sửa chỉ mục danh sách ngoài phạm vi bằng Index[]

Ở đây chúng ta sẽ tạo một danh sách và sau đó cố gắng lặp lại danh sách bằng cách sử dụng các giá trị không đổi trong vòng lặp for

Python3




7
10_______130_______
7
0
3
0_______7_______2
3
2
7
2
3
4
7
2
3
6
7
2
Traceback [most recent call last]:
  File "/home/b910d8dcbc0f4f4b61499668654450d2.py", line 8, in 
    print[list1.index[10]]
ValueError: 10 is not in list
6
list_name.index[element, start]
0

 

7
23
7
24
7
25
7
26_______7_______50
7
51
3
0
7
53
7
54
3
0
7
29

Độ phức tạp về thời gian của việc cắt danh sách Python là gì?

Cắt lát chỉ là "sao chép một phần của danh sách" nên độ phức tạp về thời gian cũng giống như sao chép. O[n+k] là trường hợp trung bình, bao gồm việc phải tăng hoặc thu nhỏ danh sách để điều chỉnh số lượng phần tử được chèn vào để thay thế phần tử ban đầu .

Độ phức tạp về thời gian của việc xóa tại chỉ mục n khỏi danh sách Python 3 chưa được sắp xếp là gì?

xóa , tôi. e. , sẽ là O[N^2] về tổng thể để xóa các phần tử khỏi danh sách.

Độ phức tạp về thời gian của việc chèn vào danh sách Python 3 chưa được sắp xếp tại chỉ mục n là bao nhiêu?

Độ phức tạp về thời gian. Phương thức insert[] có độ phức tạp về thời gian không đổi O[1] bất kể số phần tử trong danh sách là bao nhiêu.

Độ phức tạp về thời gian của danh sách cần đặt là gì?

Độ phức tạp về thời gian chung để chuyển đổi danh sách thành tập hợp là O[N] , trong đó N đại diện cho số phần tử trong danh sách.

Chủ Đề