Vấn đề và giải pháp leetcode python pdf

LeetCode là một nền tảng cung cấp quyền truy cập vào hàng nghìn vấn đề lập trình và giúp người dùng nâng cao kỹ năng của họ cũng như chuẩn bị cho các cuộc phỏng vấn kỹ thuật thường là một phần của quy trình tuyển dụng cho các vị trí Kỹ thuật và Máy học

Trong phần hướng dẫn ngắn ngày hôm nay, chúng ta sẽ khám phá bài toán đầu tiên có tên là Hai Tổng và cố gắng giải nó theo cách tối ưu. Trong các cuộc phỏng vấn kỹ thuật, điều quan trọng không chỉ là tìm ra giải pháp cho một vấn đề cụ thể mà sự phức tạp về thời gian cũng là điều mà bạn thường được hỏi về

Bài toán hai tổng

Cho một mảng các số nguyên nums và một số nguyên target, trả về các chỉ số của hai số sao cho tổng của chúng bằng target

Bạn có thể cho rằng mỗi đầu vào sẽ có chính xác một giải pháp và bạn không thể sử dụng cùng một phần tử hai lần

Bạn có thể trả lời câu trả lời theo thứ tự bất kỳ

ví dụ 1

Input: nums = [2,7,11,15], target = 9
Output: [0,1]
Output: Because nums[0] + nums[1] == 9, we return [0, 1].

ví dụ 2

Input: nums = [3,2,4], target = 6
Output: [1,2]

ví dụ 3

Input: nums = [3,3], target = 6
Output: [0,1]

Hạn chế

  • 2 3 -> 4 và bạn được cung cấp nút thứ ba có giá trị 3, danh sách được liên kết sẽ trở thành 1 -> 2 -> 4 sau khi gọi hàm của bạn. URL. https. //leetcode. com/problems/delete-node-in-a-linked-list/ # Định nghĩa cho danh sách liên kết đơn. # lớp ListNode[đối tượng]. # def __init__[bản thân, x]. # bản thân. val = x # tự. tiếp theo = Không có lớp Giải pháp [đối tượng]. def deleteNode[self, node]. """. loại nút. Danh sáchNode. đánh máy. void Không trả lại bất cứ thứ gì, thay vào đó hãy sửa đổi nút tại chỗ e. """ nếu nút == Không có. vượt qua khác. next_node = nút. nút tiếp theo. val = next_node. nút val. tiếp theo = next_node. tiếp theo

    10

    Hợp nhất hai danh sách được sắp xếp

    Hợp nhất hai danh sách đã sắp xếp Hợp nhất hai danh sách liên kết đã sắp xếp và trả về dưới dạng danh sách mới. Danh sách mới phải được tạo bằng cách nối các nút của hai danh sách đầu tiên lại với nhau. URL. https. //leetcode. com/problems/merge-hai-sorted-lists/

    11

    Hợp nhất hai danh sách được sắp xếp

    # Định nghĩa cho danh sách liên kết đơn. # lớp ListNode[đối tượng]. # def __init__[bản thân, x]. # bản thân. val = x # tự. tiếp theo = Không có lớp Giải pháp [đối tượng]. def mergeTwoLists[self, l1, l2]. """. gõ l1. Danh sáchNode. loại l2. Danh sáchNode. đánh máy. ListNode """ nếu l1 == Không và l2 == Không. trả lại Không có elif l1. = Không và l2 == Không. trả lại l1 elif l2. = Không và l1 == Không. trả lại l2 khác. giả = ListNode[0] p = giả trong khi l1. = Không và l2. = Không có. nếu l1. giá trị < l2. val. P. tiếp theo = l1 l1 = l1. tiếp theo khác. P. tiếp theo = l2 l2 = l2. tiếp theo p = p. tiếp theo nếu l1. = Không có. P. tiếp theo = l1 nếu l2. = Không có. P. tiếp theo = l2 trở lại hình nộm. tiếp theo

    12

    Hợp nhất hai danh sách được sắp xếp

    13

    Giao điểm của hai danh sách liên kết

    Giao điểm của hai danh sách liên kết Viết chương trình tìm nút bắt đầu giao điểm của hai danh sách liên kết đơn. Ví dụ, hai danh sách liên kết sau. Một. a1 → a2 ↘ c1 → c2 → c3 ↗ B. b1 → b2 → b3 bắt đầu cắt nhau tại nút c1. ghi chú. Nếu hai danh sách liên kết không có giao điểm nào cả, trả về null. Các danh sách được liên kết phải giữ nguyên cấu trúc ban đầu sau khi hàm trả về. Bạn có thể cho rằng không có chu kỳ nào trong toàn bộ cấu trúc được liên kết. Tốt nhất là mã của bạn nên chạy trong thời gian O[n] và chỉ sử dụng bộ nhớ O[1]. URL. https. //leetcode. com/problems/intersection-of-two-linked-lists/ # Định nghĩa cho danh sách liên kết đơn. # lớp ListNode[đối tượng]. # def __init__[bản thân, x]. # bản thân. val = x # tự. tiếp theo = Không có lớp Giải pháp [đối tượng]. def tạo [bản thân, numRows]. """. gõ numRows. int. đánh máy. Danh sách [Danh sách [int]] """ nếu numRows

Chủ Đề