Tag: sorting

10 รายการ

Blog

สัตว์การ์ตูนในห้องทำงานสว่าง ช้างเรียงแผ่นไม้สองแถว กระรอกนับลูกโอ๊กใส่ตะกร้า ผึ้งเติมรังผึ้ง และนกฮูกวัดกองแผ่นไม้ โดยมีสิงโตทะเลบารอนสวมเสื้อโค้ตถือนาฬิกาจับเวลาเป็นกรรมการ
leetcodepythonalgorithms

LeetCode #242 Valid Anagram: ช้าง กระรอก ผึ้ง นกฮูก ใครนับแม่นสุด

ตรวจคำสลับอักษรด้วย Python 4 วิธี ผ่านวงถกของสัตว์นักนับ พร้อมเทสต์และ benchmark ที่รันจริงบนเครื่องนี้

น้องกาย
นากการ์ตูนสีมิ้นต์จัดเรียงแท่งไม้ป้ายชื่อบนชั้นวางให้เป็นระเบียบ กำลังหยิบแท่งสีอำพันที่วางผิดที่ย้ายไปไว้ตำแหน่งที่ถูกต้อง
javacollatorsorting

Java เรียงชื่อภาษาไทยให้ตรงพจนานุกรม: ทำไม Collections.sort ส่ง "เกศินี" ไปท้ายลิสต์ และ Collator แก้ยังไง

String.compareTo เรียงตามรหัส Unicode ทำให้ชื่อที่ขึ้นต้นด้วยสระหน้า เ แ โ ใ ไ ไปกองท้ายลิสต์ ใช้ java.text.Collator กับ Locale th-TH เรียงชื่อไทยให้ถูก ปรับ strength และใช้ให้ปลอดภัยกับหลายเธรด ทดสอบจริงบน JDK 21

น้องกาย
ปูต้นฉบับเรียงกล่องสีเขียวบนทางลาดจากเตี้ยไปสูงและหยุดที่กล่องอำพันซึ่งวางผิดลำดับ
rustiteratorvalidation

Rust Iterator::is_sorted_by_key: ตรวจลำดับโดยไม่สร้าง Vec สำรอง

ตรวจ stream ว่าเรียงตาม priority หรือไม่ด้วย is_sorted_by_key พร้อม Cargo test และข้อควรระวังเรื่อง key

พี่โชว์
นากกายต้นฉบับกำลังจับก้อนตัวเลขสามก้อนจากรางเรียงลำดับให้สมดุลที่จุดกึ่งกลาง
leetcodepythontwo-pointers

LeetCode 15 3Sum: sort แล้วบีบสองฝั่งเพื่อคุมชุดซ้ำ

เทียบ two pointers, hash per pivot และ brute-force oracle พร้อม complexity, duplicate rules, decision table และ Python tests

พี่โชว์
นากกายกำลังจัดริบบิ้นหลายเส้นให้ต้นริบบิ้นที่เหมือนกันซ้อนตรงกัน
leetcodepythonstrings

LeetCode 14 Longest Common Prefix: หดคำตั้งต้นจนทุกคำยอมรับ

เทียบ horizontal shrink, vertical scan และ sort first-last พร้อม complexity, edge cases, decision table และ Python tests

พี่โชว์
นากกายใช้คีมคีบป้ายชื่อฟิลด์จากกล่องออบเจ็กต์บนโต๊ะมิ้นต์
pythonoperatorstdlib

operator.attrgetter: ดึงฟิลด์เรียง/แมปโดยไม่เขียน lambda ซ้ำ

ใช้ operator.attrgetter ดึง attribute เดี่ยวหรือหลายตัว รวม dotted path สำหรับ sorted และ map

น้องกาย
นากกายต้นฉบับเรียงบัตรชื่อบนราง โดยบัตรว่างถูกเลื่อนไปช่องสุดท้ายสีอำพัน
javacomparatorsorting

Java Comparator.nullsLast: วางค่าที่หายไว้ท้ายตารางโดยไม่เขียน if ซ้อน

ประกอบ Comparator ที่รองรับ null แล้วต่อ tie-breaker อย่างอ่านง่าย พร้อมอธิบายขอบเขตระหว่างข้อมูลหายกับข้อมูลผิด

พี่โชว์
งูต้นฉบับหยิบบัตรจากช่องคะแนนและเวลาแล้วจัดเรียงลงถาดบนโต๊ะสีครีม
pythonsortingoperator

Python itemgetter: เขียน sort key หลายช่องให้สั้นและเห็นลำดับชัด

ใช้ operator.itemgetter เรียง record ตามหลายฟิลด์ พร้อมจัดการค่ากลับทิศและข้อจำกัดของข้อมูลที่อาจขาด

พี่โชว์
งูต้นฉบับต่อแผ่นทางเดินเลขที่ไร้ตัวอักษรจากชิ้นเริ่มต้น โดยกองชิ้นซ้ำถูกวางด้านข้าง
leetcodepythonhash-set

LeetCode #128 Longest Consecutive Sequence: เริ่มนับเฉพาะหัวแถว

เทียบ sort กับ hash set สำหรับลำดับจำนวนเต็มต่อเนื่อง พร้อม complexity, duplicate edge cases และ unittest

พี่โชว์
งูต้นฉบับจัดลูกบอลสามสีจากกองสลับกันลงรางสามช่วงโดยมีลูกศรสองด้าน
leetcodepythontwo-pointers

LeetCode #75 Sort Colors: Counting เทียบ Dutch National Flag แบบเขียนทับในที่เดิม

เทียบ 3 วิธีเรียง 0,1,2 พร้อม invariant, mutation tradeoff, decision table และ unittest

พี่โชว์