Làm thế nào để bạn xác định một cấu trúc trong python?

Trong khoa học máy tính, cấu trúc dữ liệu là cách sắp xếp hợp lý dữ liệu trong bộ nhớ máy tính để có thể sử dụng hiệu quả. Cấu trúc dữ liệu cho phép dữ liệu được thêm, xóa, lưu trữ và duy trì theo cách có cấu trúc. Python hỗ trợ hai loại cấu trúc dữ liệu

  • Các kiểu dữ liệu không nguyên thủy. Python có danh sách, tập hợp và từ điển dưới dạng các kiểu dữ liệu không nguyên thủy, cũng có thể được coi là cấu trúc dữ liệu dựng sẵn của nó
  • Cấu trúc dữ liệu do người dùng định nghĩa. Các cấu trúc dữ liệu không được python hỗ trợ nhưng có thể được lập trình để phản ánh chức năng tương tự bằng cách sử dụng các khái niệm được python hỗ trợ là các cấu trúc dữ liệu do người dùng xác định. Có nhiều cấu trúc dữ liệu có thể được thực hiện theo cách này
    • danh sách liên kết
    • Cây rơm
    • Xếp hàng
    • Cây
    • đồ thị
    • Bản đồ băm

danh sách liên kết

Danh sách liên kết là một cấu trúc dữ liệu tuyến tính, trong đó các phần tử không được lưu trữ tại các vị trí bộ nhớ liền kề. Các phần tử trong danh sách liên kết được liên kết bằng con trỏ như trong hình bên dưới.
 

Chương trình

Python3




llist= [____3,'second','third']

print=0

 

print=2

 

=3

=4=5____16

=4=8____16

[0[1,[3=6

print=0

print=2

 

[9'second'=6

print=0

print=2

đầu ra

['đầu tiên', 'thứ hai', 'thứ ba']

['thứ nhất', 'thứ hai', 'thứ ba', 'thứ sáu', 'thứ tư', 'thứ năm']

['thứ nhất', 'thứ ba', 'thứ sáu', 'thứ tư', 'thứ năm']

Cây rơm

Ngăn xếp là một cấu trúc tuyến tính cho phép dữ liệu được chèn và xóa từ cùng một đầu, do đó tuân theo hệ thống nhập sau xuất trước [LIFO]. Chèn và xóa lần lượt được gọi là push[] và pop[]

Chương trình

Python3




'first'6= [____3,'second','third']

print,6

 

print=2

 

,9

'second'0=5=6

'second'0=8=6

print,6

print=2

 

,0

,1= ,3,6

print,6,7,8,9

print=2

 

'third'2

'third'3

print,6

đầu ra

['đầu tiên', 'thứ hai', 'thứ ba']

['thứ nhất', 'thứ hai', 'thứ ba', 'thứ tư', 'thứ năm']

thứ năm

['thứ nhất', 'thứ hai', 'thứ ba', 'thứ tư']

Xếp hàng

Hàng đợi là một cấu trúc tuyến tính cho phép chèn các phần tử từ đầu này và xóa từ đầu kia. Do đó, nó tuân theo phương pháp First In First Out [FIFO]. Đầu cho phép xóa được gọi là đầu hàng đợi và đầu kia được gọi là đầu cuối hàng đợi.  

Chương trình

Python3




'third'6= ['first','second','third']

print]6

 

print=2

 

,9

print0=5=6

print0=8=6

print]6

print=2

 

=00

print=02____103,9

 

=05

,1= ,3]6

print=11,7,8,9

print=2

 

'third'2

=18=03____49

print]6

đầu ra

['đầu tiên', 'thứ hai', 'thứ ba']

['thứ nhất', 'thứ hai', 'thứ ba', 'thứ tư', 'thứ năm']

Đầu tiên

thứ năm

['thứ hai', 'thứ ba', 'thứ tư', 'thứ năm']

Cây

Cây là một cấu trúc dữ liệu phi tuyến tính nhưng có thứ bậc. Phần tử trên cùng được gọi là gốc của cây vì cây được cho là bắt đầu từ gốc. Các phần tử ở phần cuối của cây được gọi là lá của nó. Cây phù hợp để lưu trữ dữ liệu không được kết nối tuyến tính với nhau mà tạo thành một hệ thống phân cấp.  

Chương trình

Python3




=23 =24

=25=26 =27=28=29

=30=28=32= =34

=30=28=37= =39

=30=28=42= =39

 

 

=26 =46=28=48

=25=50 =28=52

=30print____155=28=57

=30=46=28=61

=30=46=28=65

 

 

,1= =68'first'=6

=71= =68'second'=6

=76= =68'third'=6

=81

đầu ra

Đầu tiên

thứ hai

ngày thứ ba

đồ thị

Biểu đồ là cấu trúc dữ liệu phi tuyến tính bao gồm các nút và cạnh. Các nút đôi khi còn được gọi là đỉnh và các cạnh là các đường hoặc cung nối hai nút bất kỳ trong biểu đồ. Đồ thị bao gồm một tập hợp hữu hạn các đỉnh [hoặc nút] và tập hợp các Cạnh kết nối một cặp nút

Chương trình

Python3




=23 =83

=25=26 =27=28=88

=30=28=91= =93

=30=28=96=97 = =39

 

 

=23 [01

=25=26 =27=28[06

=30=28[09= [11

=30=28=32= [=39][19=28[09

 

=25=26 [24=28[26

=30[28= [30

=30[32____197 = =28[36

=30=28[36= [28

 

=30[28= [45

=30[32____197 = =28[51

=30=28[51= [28

 

=25=26 [59____128=48

=30[63 [64[65 [66=55=28[69

[70print=55[73=96[75[76=[78

[70[80= =28[83

[70[85 [86

[87print=55[90=96[75[93=[78

[87[80= [99=97

 

 

'first'01= 'first'03______304=6

'first'06=03______4'first'09=6

'first'06,8,[1=6

'first'06[1____4'first'09=6

'first'06=03____4[1=6

'first'26

đầu ra

Danh sách kề của đỉnh 0

đầu -> 3 -> 2

Danh sách kề của đỉnh 1

cái đầu -> 3

Danh sách kề của đỉnh 2

đầu -> 3 -> 0

Danh sách kề của đỉnh 3

đầu -> 0 -> 2 -> 1

Bản đồ băm

Bản đồ băm là cấu trúc dữ liệu được lập chỉ mục. Bản đồ băm sử dụng hàm băm để tính toán chỉ mục có khóa vào một mảng các nhóm hoặc vị trí. Giá trị của nó được ánh xạ tới vùng chứa với chỉ mục tương ứng. Chìa khóa là duy nhất và bất biến. Trong Python, từ điển là ví dụ về bản đồ băm

Chương trình

Python3




=26 'first'28

=25[63 'first'31____265 'first'33

=30print____336'first'37'first'38

 

 

'first'39= 'first'41=03=52'first',,8=52'second','first'09=52'third''first'53

Có cấu trúc nào trong Python không?

Mô-đun cấu trúc trong Python được sử dụng để chuyển đổi các kiểu dữ liệu gốc của Python như chuỗi và số thành chuỗi byte và ngược lại.

Cái gì thay thế cho cấu trúc trong Python?

Stru là một thư viện dữ liệu có cấu trúc nhị phân linh hoạt và khai báo, giống như mô-đun cấu trúc của Python

Chủ Đề