Hướng dẫn hands-on data structures and algorithms with python 3rd edition - thực hành cấu trúc dữ liệu và thuật toán với phiên bản thứ 3 của python
Hiểu cách thực hiện các cấu trúc dữ liệu và thuật toán khác nhau một cách thông minh có thể làm cho mã python và ứng dụng của bạn có thể duy trì và hiệu quả hơn Show
Các tính năng chính
Mô tả cuốn sáchChọn cấu trúc dữ liệu phù hợp là then chốt để tối ưu hóa hiệu suất và khả năng mở rộng của các ứng dụng. Phiên bản mới này của các cấu trúc và thuật toán dữ liệu thực hành với Python sẽ mở rộng sự hiểu biết của bạn về các cấu trúc chính, bao gồm các ngăn xếp, hàng đợi và danh sách, và cũng chỉ cho bạn cách áp dụng hàng đợi ưu tiên và đống trong các ứng dụng. Bạn sẽ tìm hiểu cách phân tích và so sánh các thuật toán Python và hiểu thuật toán nào nên được sử dụng cho một vấn đề dựa trên thời gian chạy và độ phức tạp tính toán. Bạn cũng sẽ tự tin tổ chức mã của mình theo cách có thể quản lý, nhất quán và có thể mở rộng, điều này sẽ tăng năng suất của bạn như một nhà phát triển Python. Đến cuối cuốn sách Python này, bạn sẽ có thể thao tác các cấu trúc và thuật toán dữ liệu quan trọng nhất để lưu trữ, tổ chức và truy cập dữ liệu hiệu quả hơn trong các ứng dụng của bạn. Những gì bạn sẽ học
Cuốn sách này dành cho aiCuốn sách này dành cho các nhà phát triển và lập trình viên quan tâm đến việc tìm hiểu về cấu trúc dữ liệu và thuật toán trong Python để viết các chương trình phức tạp, linh hoạt. Kiến thức lập trình Python cơ bản được mong đợi. Mục lục
6Kết nối 7
Hello how are you Hello how are you multiline String 0Tư cách thành viên
Đầu ra sẽ như sau:
Trong Python, các giá trị số có thể được sử dụng làm giá trị bool bằng cách sử dụng hàm 2 tích hợp. Bất kỳ số nào (số nguyên, phao, phức tạp) có giá trị bằng 0 được coi là 9 và giá trị khác không được coi là 8. Ví dụ:
Đầu ra của mã trên sẽ như sau.
Các loại dữ liệu trình tự cũng là một loại dữ liệu rất cơ bản và phổ biến, mà chúng tôi sẽ xem xét tiếp theo. Trình tựCác loại dữ liệu trình tự được sử dụng để lưu trữ nhiều giá trị theo một biến theo cách có tổ chức và hiệu quả. Có bốn loại chuỗi cơ bản: chuỗi, phạm vi, danh sách và bộ dữ liệu. DâyMột chuỗi là một chuỗi các ký tự bất biến được biểu diễn trong các trích dẫn đơn, gấp đôi hoặc ba. Bất biến có nghĩa là một khi một kiểu dữ liệu đã được gán một số giá trị, nó có thể thay đổi. Loại chuỗi trong Python được gọi là 5. Một chuỗi trích dẫn ba có thể kéo dài thành nhiều dòng bao gồm tất cả khoảng trắng trong chuỗi. Ví dụ:
Đầu ra sẽ như sau:
Toán tử 6 nối các chuỗi, trả về một chuỗi sau khi kết hợp các toán hạng, kết hợp chúng với nhau. Ví dụ:
Đầu ra sẽ như sau:
Toán tử 6 nối các chuỗi, trả về một chuỗi sau khi kết hợp các toán hạng, kết hợp chúng với nhau. Ví dụ:
Toán tử 7 có thể được sử dụng để tạo nhiều bản sao của chuỗi. Khi nó được áp dụng với một số nguyên (n, hãy nói) và một chuỗi, toán tử 7 trả về một chuỗi bao gồm các bản sao n được nối của chuỗi. Ví dụ:
Đầu ra sẽ như sau.Phạm vi 0Kiểu dữ liệu 9 đại diện cho một chuỗi số bất biến. Nó chủ yếu được sử dụng trong các vòng 0 và 1. Nó trả về một chuỗi các số bắt đầu từ một số đã cho đến một số được chỉ định bởi đối số hàm. Nó được sử dụng như trong lệnh sau: 1Toán tử 7 có thể được sử dụng để tạo nhiều bản sao của chuỗi. Khi nó được áp dụng với một số nguyên (n, hãy nói) và một chuỗi, toán tử 7 trả về một chuỗi bao gồm các bản sao n được nối của chuỗi. Ví dụ: 2Đầu ra sẽ như sau.Phạm vi Kiểu dữ liệu 9 đại diện cho một chuỗi số bất biến. Nó chủ yếu được sử dụng trong các vòng 0 và 1. Nó trả về một chuỗi các số bắt đầu từ một số đã cho đến một số được chỉ định bởi đối số hàm. Nó được sử dụng như trong lệnh sau: 3Đầu ra của mã trên sẽ như sau. 4Ở đây, đối số 2 chỉ định bắt đầu trình tự, đối số 3 chỉ định giới hạn cuối của chuỗi và đối số 4 chỉ định cách trình tự sẽ tăng hoặc giảm. Ví dụ này mã Python thể hiện hoạt động của hàm phạm vi:Danh sách Danh sách Python được sử dụng để lưu trữ nhiều mục trong một biến duy nhất. Các giá trị trùng lặp được cho phép trong một danh sách và các phần tử có thể thuộc các loại khác nhau: ví dụ, bạn có thể có cả dữ liệu số và chuỗi trong danh sách Python. Các mục được lưu trữ trong danh sách được đặt trong dấu ngoặc vuông, 5 và được phân tách bằng dấu phẩy, như được hiển thị bên dưới:Phần tử dữ liệu của danh sách được hiển thị trong Hình 1.4, hiển thị giá trị chỉ mục của từng mục trong danh sách:
Bảng 1.1: Đặc điểm của cấu trúc dữ liệu danh sách với các ví dụ Bây giờ, trong khi thảo luận về các loại dữ liệu danh sách, trước tiên chúng ta nên hiểu các toán tử khác nhau, chẳng hạn như thành viên, danh tính và toán tử logic, trước khi thảo luận về chúng và cách chúng có thể được sử dụng trong các loại dữ liệu danh sách hoặc bất kỳ loại dữ liệu nào khác. Trong phần sắp tới, chúng tôi thảo luận về cách các nhà khai thác hoạt động và được sử dụng trong các loại dữ liệu khác nhau. Tư cách thành viên, danh tính và hoạt động logicPython hỗ trợ tư cách thành viên, danh tính và toán tử logic. Một số loại dữ liệu trong Python hỗ trợ họ. Để hiểu cách các nhà khai thác này hoạt động, chúng tôi sẽ thảo luận về từng hoạt động này trong phần này. Các nhà khai thác thành viênCác nhà khai thác này được sử dụng để xác nhận tư cách thành viên của một mục. Tư cách thành viên có nghĩa là chúng tôi muốn kiểm tra nếu một giá trị nhất định được lưu trữ trong biến chuỗi, chẳng hạn như một chuỗi, danh sách hoặc tuple. Các nhà khai thác thành viên phải kiểm tra tư cách thành viên trong một chuỗi; đó là, một chuỗi, danh sách hoặc tuple. Hai nhà khai thác thành viên chung được sử dụng trong Python là 4 và 02 4.Toán tử 4 được sử dụng để kiểm tra xem giá trị có tồn tại theo trình tự hay không. Nó trả về 8 nếu nó tìm thấy biến đã cho trong chuỗi được chỉ định và 9 nếu không: 7Đầu ra sẽ như sau: 8Toán tử ‘ 5 'trở lại 8 nếu nó không tìm thấy một biến trong chuỗi được chỉ định và 9 nếu nó được tìm thấy: 9Đầu ra sẽ như sau. 0Người vận hành danh tínhToán tử nhận dạng được sử dụng để so sánh các đối tượng. Các loại toán tử nhận dạng khác nhau là 10 và 10 02, được định nghĩa như sau.Toán tử 10 được sử dụng để kiểm tra xem hai biến có đề cập đến cùng một đối tượng hay không. Điều này khác với toán tử bình đẳng ( 14). Trong toán tử bình đẳng, chúng tôi kiểm tra xem hai biến có bằng nhau không. Nó trả về 8 nếu cả hai biến bên chỉ vào cùng một đối tượng; Nếu không, thì nó sẽ trả về 9: 1Đầu ra sẽ như sau: 2Toán tử ‘ 5 'trở lại 8 nếu nó không tìm thấy một biến trong chuỗi được chỉ định và 9 nếu nó được tìm thấy: 3Đầu ra sẽ như sau: 4Toán tử ‘ 5 'trở lại 8 nếu nó không tìm thấy một biến trong chuỗi được chỉ định và 9 nếu nó được tìm thấy:Đầu ra sẽ như sau.Người vận hành danh tính Toán tử nhận dạng được sử dụng để so sánh các đối tượng. Các loại toán tử nhận dạng khác nhau là 10 và 10 02, được định nghĩa như sau. 5Đầu ra sẽ như sau. 6Người vận hành danh tính 7Đầu ra sẽ như sau. 8Người vận hành danh tính 9Đầu ra sẽ như sau. 0Người vận hành danh tính Toán tử nhận dạng được sử dụng để so sánh các đối tượng. Các loại toán tử nhận dạng khác nhau là Toán tử 10 được sử dụng để kiểm tra xem hai biến có đề cập đến cùng một đối tượng hay không. Điều này khác với toán tử bình đẳng ( 14). Trong toán tử bình đẳng, chúng tôi kiểm tra xem hai biến có bằng nhau không. Nó trả về 8 nếu cả hai biến bên chỉ vào cùng một đối tượng; Nếu không, thì nó sẽ trả về 9:Toán tử 10 02 được sử dụng để kiểm tra xem hai biến có hướng đến cùng một đối tượng hay không. 8 được trả về nếu cả hai biến bên đều trỏ đến các đối tượng khác nhau, nếu không, nó sẽ trả về 9: 1Phần này là về các nhà khai thác danh tính. Tiếp theo, chúng ta hãy thảo luận về các nhà khai thác logic. 2Toán tử logic
Bảng 1.2: Ví dụ về các hoạt động tuple Các bộ dữ liệu trong Python hỗ trợ lập chỉ mục dựa trên không, lập chỉ mục âm và cắt.Để hiểu nó, hãy để Lừa lấy một bộ tuple mẫu, như hình dưới đây: 3Chúng ta có thể thấy các ví dụ về lập chỉ mục dựa trên không, lập chỉ mục tiêu cực và các hoạt động cắt lát trong Bảng 1.3:
9 |