Thử thách lập trình Swift

225 thử thách bạn có thể giải bằng Swift, từ vòng lặp đầu tiên đến đồ thị, quy hoạch động và học máy. Viết code trên trình duyệt, chạy kiểm thử ngay và nhận nhận xét từ AI.

Dễ · 134 Trung bình · 67 Khó · 24

Kỹ năng bạn sẽ luyện: ĐếmTách chuỗiTách chữ sốCông thứcDanh sáchDanh sách 2 chiềuSố họcVòng lặpChia lấy dưHai con trỏHạ gradientKiểm tra hợp lệ
  • Python · C++ · C#
  • Kiểm tra tự động
  • Đánh giá mã bằng AI
  • Giải pháp cộng đồng
226
Thử thách
123
Giải pháp đã chia sẻ
9
Ngôn ngữ

Tất cả thử thách

Tìm theo chủ đề, ngôn ngữ hoặc độ khó.

225 thử thách
Dễ

Dự đoán bằng hồi quy logistic

Phân loại mẫu thành 0 hoặc 1 bằng cách đưa tổng có trọng số qua sigmoid và so sánh với một ngưỡng.

Bạn sẽ học Hồi quy logisticNgưỡng
trí tuệ nhân tạohọc máy
Chưa có lời giải
Trung bình

Các lần gộp Byte Pair Encoding (BPE)

Học cách gộp từ con như tokenizer của GPT: liên tục gộp cặp ký hiệu liền kề xuất hiện nhiều nhất.

Bạn sẽ học BPETách token subword
trí tuệ nhân tạohọc máy
Chưa có lời giải
Trung bình

Thứ tự hoàn thành tác vụ song song

Chạy các task đồng thời với tối đa k task cùng lúc và báo cáo thứ tự chúng hoàn thành.

Bạn sẽ học Đồng thờiHàng đợi ưu tiên
SimulationSorting
Chưa có lời giải
Dễ

Mã hóa one-hot

Biến các danh mục thành vector chỉ có một số 1, định dạng đầu vào cho bộ phân loại và embedding.

Bạn sẽ học Vector one-hotDữ liệu phân loại
trí tuệ nhân tạohọc máy
Chưa có lời giải
Dễ

Ghép khách hàng và đơn hàng

Ghép khách hàng với đơn hàng giống LINQ Join và báo tổng chi tiêu của từng khách.

Bạn sẽ học LINQ JoinGom nhóm
ArraysSorting
Chưa có lời giải
Dễ

Thao tác với danh sách liên kết

Mô phỏng danh sách liên kết: thêm vào hai đầu, xóa ở đầu hoặc theo giá trị, và đảo ngược.

Bạn sẽ học Danh sách liên kếtMô phỏng
Data-structuresSimulation
Chưa có lời giải
Dễ

Người đăng ký sự kiện

Gửi sự kiện tới những người đăng ký từng chủ đề theo kiểu observer và đếm số thông báo mỗi người nhận được.

Bạn sẽ học Observer patternDictionary
Mẫu thiết kếSimulationStrings
Chưa có lời giải
Dễ

Decorator cho giá tiền

Bọc một giá gốc bằng các decorator giảm giá, thuế, phí vận chuyển và coupon được áp dụng theo thứ tự.

Bạn sẽ học Decorator patternPhần trăm
Mẫu thiết kếSimulationmath
Chưa có lời giải
Dễ

Sắp xếp theo khóa được chọn

Sắp xếp mọi người theo tên hoặc theo tuổi bằng một comparer được chọn khi chạy, đồng thời phá vỡ các trường hợp bằng nhau một cách nhất quán.

Bạn sẽ học ComparerSắp xếp
ArraysSorting
Chưa có lời giải
Trung bình

Ngăn xếp với giá trị nhỏ nhất

Xây dựng một stack có thể báo cáo phần tử nhỏ nhất của nó ngay lập tức sau bất kỳ lần push hoặc pop nào.

Bạn sẽ học Ngăn xếpGiá trị nhỏ nhất
Data-structuresStacks
Chưa có lời giải
Dễ

Chi phí thông báo

Gửi tin nhắn qua email, SMS và push, mỗi kênh tự tính chi phí theo cách riêng.

Bạn sẽ học Đa hìnhChia nguyên
SimulationStrings
Chưa có lời giải
Dễ

Facade thanh toán

Ẩn các bước kiểm tra tồn kho và tính tổng giá phía sau một lời gọi checkout đơn giản.

Bạn sẽ học Facade patternKiểm tra hợp lệ
ArraysMẫu thiết kếSimulation
Chưa có lời giải
Dễ

Một cấu hình dùng chung

Mô phỏng một đối tượng thiết lập singleton: mọi phần của chương trình đều đọc và ghi cùng một thể hiện.

Bạn sẽ học SingletonTrạng thái dùng chung
BeginnerMẫu thiết kếSimulation
Chưa có lời giải
Dễ

Tổng thời gian với WhenAll

Tìm chương trình mất bao lâu khi mỗi nhóm tác vụ chạy cùng nhau bằng Task.WhenAll và các nhóm chạy lần lượt.

Bạn sẽ học Async/awaitTask.WhenAll
ArraysBeginner
Chưa có lời giải
Dễ

Định dạng hóa đơn

In các dòng hóa đơn và dòng tổng, số tiền lưu bằng xu nhưng hiển thị dạng đô la và xu.

Bạn sẽ học Tiền tính bằng xuĐịnh dạng chuỗi
BeginnerStrings
Chưa có lời giải
Dễ

Bản ghi không trùng lặp

Xóa các bản ghi trùng nhau theo giá trị, giữ lại bản ghi đầu tiên của mỗi giá trị theo đúng thứ tự.

Bạn sẽ học RecordSo sánh theo giá trị
BeginnerStrings
Chưa có lời giải
Dễ

Quy tắc tài khoản ngân hàng

Bảo vệ số dư tài khoản bằng các quy tắc nạp và rút tiền, từ chối các thao tác không hợp lệ.

Bạn sẽ học Đóng góiQuy tắc nghiệp vụ
BeginnerSimulation
Chưa có lời giải
Dễ

Chia danh sách thành từng phần

Cắt một danh sách thành các nhóm liên tiếp có kích thước cố định, với nhóm cuối cùng ngắn hơn nếu cần.

Bạn sẽ học Cắt látChia lô
ArraysBeginner
Chưa có lời giải