สร้างอาร์เรย์อย่างรวดเร็วด้วยนิพจน์สร้างข้อมูล
อ่านและจัดรูปข้อมูลเข้าในบรรทัดเดียว
สร้างอาร์เรย์อย่างรวดเร็วด้วยนิพจน์สร้างข้อมูล เป็นบทเรียน Coding Interview Prep ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Coding Interview Prep และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Coding Interview Prep มีบทเรียนทั้งหมด 4 บทเรียน
สร้างรายการในบรรทัดเดียว
การสร้างรายการด้วยนิพจน์แบบย่อจะสร้างรายการจากลูปด้วยนิพจน์เดียว สั้นกว่า เร็วกว่า และเป็นรูปแบบมาตรฐานในการจัดรูปข้อมูลสำหรับการแข่งขัน
squares = [i * i for i in range(5)]รูปแบบพื้นฐาน
รูปแบบคือ [expr for item in iterable] นิพจน์ทางซ้ายจะทำงานหนึ่งครั้งต่อสมาชิกแต่ละรายการที่ลูปส่งออกมา
doubles = [x * 2 for x in nums]อ่านบรรทัดจำนวนเต็ม
รูปแบบบรรทัดที่พบบ่อยที่สุดในการแข่งขันคือ แยกข้อมูลขาเข้าแล้วแปลงโทเค็นแต่ละรายการ ขั้นตอนนี้แปลงข้อความเป็นจำนวนเต็มได้อย่างอ่านเข้าใจง่ายในครั้งเดียว
nums = [int(x) for x in input().split()]map() ทำหน้าที่เดียวกัน
map(int, ...) จะนำ int ไปใช้กับโทเค็นแต่ละรายการ ครอบด้วย list(...) เพื่อสร้างค่าเหล่านั้นขึ้นมาเก็บไว้สำหรับใช้ซ้ำ
nums = list(map(int, input().split()))กรองไปพร้อมกับการสร้าง
เพิ่มเงื่อนไข ifไว้ท้ายสุด เพื่อเก็บเฉพาะรายการที่ผ่านเงื่อนไข ในที่นี้จะเหลือเฉพาะจำนวนคู่ระหว่างการสร้างเท่านั้น
evens = [x for x in nums if x % 2 == 0]แปลงและกรองพร้อมกัน
คุณสามารถแปลงและกรองได้พร้อมกัน โดยเปลี่ยนรายการที่เก็บไว้ทางด้านซ้าย ขณะคัดกรองด้วย if ที่อยู่ท้ายสุด
out = [x * x for x in nums if x > 0]สร้างอาร์เรย์ที่เติมศูนย์
ต้องการอาร์เรย์ขนาดคงที่หรือไม่ [0] * n จะสร้างเลขศูนย์จำนวน n ตัวได้ทันที เหมาะอย่างยิ่งสำหรับตัวนับและตาราง DP
dp = [0] * nระวังลิสต์ด้านในที่ซ้ำกัน
ใช้การสร้างแบบกระชับสำหรับตารางสองมิติ [[0] * c for _ in range(r)] จะสร้างแถวที่เป็นอิสระต่อกัน ส่วน [[0] * c] * r จะแชร์แถวเดียวกัน
grid = [[0] * c for _ in range(r)]หาดัชนีด้วย enumerate
เมื่อคุณต้องการตำแหน่งด้วย ให้วนซ้ำด้วย enumerate เพื่อให้แต่ละรอบได้ทั้งดัชนีและค่าอย่างเป็นระเบียบ
pairs = [(i, v) for i, v in enumerate(nums)]อ่านเมทริกซ์ทั้งชุด
รวมการอ่านข้อมูลเข้ากับการวนซ้ำ เพื่อดึงแถว r แถวของตัวเลขเข้ามาพร้อมกัน แล้วสร้างตารางทั้งหมดด้วยโค้ดสั้น ๆ สองบรรทัด
grid = [list(map(int, input().split()))
for _ in range(r)]รูปแบบเซตและพจนานุกรม
ไวยากรณ์เดียวกันนี้ใช้สร้างเซตและพจนานุกรมได้ โดยใช้วงเล็บปีกกา {x for x in nums} จะตัดค่าที่ซ้ำกันออก และคู่ key:value จะสร้างแผนที่
seen = {x for x in nums}ตรวจสอบอย่างรวดเร็ว
เลือกสำนวนการเขียนที่ใช้อ่านบรรทัดซึ่งมีจำนวนเต็มคั่นด้วยช่องว่าง
ทบทวน: สร้างได้อย่างรวดเร็ว
ตอนนี้คุณสามารถสร้าง กรอง และปรับรูปทรงของอาร์เรย์ได้ในบรรทัดเดียว รวมทั้งอ่านเมทริกซ์ทั้งหมดได้อย่างรวดเร็ว การสร้างแบบกระชับช่วยให้การแยกวิเคราะห์ข้อมูลนำเข้าสั้นและปราศจากข้อผิดพลาด 💡
คำถามที่พบบ่อย
บทเรียน “สร้างอาร์เรย์อย่างรวดเร็วด้วยนิพจน์สร้างข้อมูล” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “สร้างอาร์เรย์อย่างรวดเร็วด้วยนิพจน์สร้างข้อมูล” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Coding Interview Prep ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Coding Interview Prep มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “สร้างอาร์เรย์อย่างรวดเร็วด้วยนิพจน์สร้างข้อมูล”
อ่านและจัดรูปข้อมูลเข้าในบรรทัดเดียว คุณปฏิบัติ Coding Interview Prep ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Coding Interview Prep หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Coding Interview Prep บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน
บทเรียน “สร้างอาร์เรย์อย่างรวดเร็วด้วยนิพจน์สร้างข้อมูล” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Coding Interview Prep นี้ได้ไหม
ได้ บทเรียน Coding Interview Prep ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- ลิสต์ การจัดทำดัชนี และการตัดช่วงสำหรับ CP
- สร้างอาร์เรย์อย่างรวดเร็วด้วยนิพจน์สร้างข้อมูล
- ค่าต่ำสุด ค่าสูงสุด ผลรวม และยอดสะสม
- ค้นหาดัชนี ไม่ใช่แค่ค่า