Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python
Python
  1. Python - การทำงานกับ Pandas และ XlsxWriter

    Pandas เป็นไลบรารีวิเคราะห์ข้อมูล อ่าน กรอง จัดเรียง ข้อมูลขนาดเล็กถึงใหญ่ ได้ และส่งออกเป็นหลายรูปแบบ รวมถึง Excel Pandas เขียนไฟล์ Excel ผ่านโมดูล XlsxWriter ซึ่งรองรับการจัดรูปแบบ, รูปภาพ, แผนภูมิ, ตั้งค่าหน้า, ตัวกรองอัตโนมัติ, จัดรูปแบบเงื่อนไข และอื่นๆ ตัวอย่าง: เขียน DataFrame หลายตัวลงชีทเดี

  2. Python - การทำงานกับรูปภาพ PNG ด้วย Matplotlib

    Matplotlib เป็นไลบรารีแสดงผลข้อมูล 2D ยอดนิยม สร้างบน NumPy arrays ทำงานร่วมกับ SciPy stack ได้ดี ตัวอย่างเทคนิคต่างๆ 1. Pseudocolor (สีเท็จ) import matplotlib.pyplot as plt import matplotlib.image as img im = img.imread(imR.png) lum = im[:, :, 0] # เอาช่องสีแรก (Red channel) plt.imshow(lum) plt.s

  3. Python - การรวมข้อมูลจากหลายไฟล์เป็นไฟล์หลัก (Master File)

    การจัดการไฟล์เป็นส่วนสำคัญของแอปพลิเคชันเว็บ Python มีฟังก์ชันสำหรับสร้าง, อ่าน, อัปเดต, ลบไฟล์ โหมดการเปิดไฟล์: a - Append: เขียนต่อท้ายไฟล์ w - Write: ทับเนื้อหาเดิม ตัวอย่าง: รวมไฟล์ข้อมูลหลายไฟล์เป็น master.txt import os # รายการไฟล์ในโฟลเดอร์ข้อมูล data_dir = rD:\python\data_files\data_files

  4. Python - การเขียนไฟล์ Excel ด้วยโมดูล openpyxl

    Openpyxl เป็นไลบรารี Python สำหรับอ่านและเขียนไฟล์ Excel (นามสกุล xlsx/xlsm/xltx/xltm) โมดูลนี้ช่วยให้โปรแกรม Python อ่านและแก้ไขไฟล์ Excel ได้อย่างมีประสิทธิภาพ ตัวอย่าง: ผู้ใช้อาจต้องวนลูปหลายพันแถว เพื่อดึงข้อมูลเฉพาะบางส่วน แล้วทำการเปลี่ยนแปลงตามเกณฑ์ Openpyxl ทำให้งานเหล่านี้ง่ายและรวดเร็ว ตัว

  5. หาคู่ตัวเลขในเมทริกซ์ที่มีผลรวมกำหนดและอยู่คนละแถวใน Python

    สมมติว่าเรามีเมทริกซ์ที่มีค่าไม่ซ้ำกัน และค่า Sum ต้องการหาคู่ตัวเลขที่มีผลรวมเท่ากับ Sum โดยตัวเลขแต่ละคู่ต้องมาจากแถวที่ต่างกัน เช่น เมทริกซ์ 4x4, Sum = 13 ผลลัพธ์คือ [(2,11), (4,9), (3,10), (5,8), (12,1)] ขั้นตอนการแก้ปัญหา เรียงลำดับแต่ละแถวในเมทริกซ์ สำหรับแต่ละคู่แถว (i, j) ใช้ Two Pointers ห

  6. หาคู่ตัวเลขที่มีผลรวมกำหนดจากสอง BST ใน Python

    สมมติว่าเรามี Binary Search Tree สองต้น และค่า Sum ต้องการหาคู่ตัวเลขที่มีผลรวมเท่ากับ Sum โดยตัวเลขแต่ละคู่ต้องมาจากต้นไม้ต่างกัน เช่น Sum = 12 ผลลัพธ์คือ [(6,6), (7,5), (9,3)] ขั้นตอนการแก้ปัญหา (Inorder + Two Pointers) ทำ Inorder Traversal ทั้งสองต้นไม้ ได้อาร์เรย์เรียงลำดับ trav1, trav2 ใช้ Two

  7. หาผลคูณของผลรวมใบไม้ในแต่ละระดับของต้นไม้บाइनนารีใน Python

    สมมติว่าเรามีต้นไม้บाइनนารี สำหรับแต่ละระดับที่มีใบไม้ ให้หาผลรวมค่าของใบไม้ในระดับนั้น แล้วนำผลรวมทุกระดับมาคูณกัน เช่น ต้นไม้ตัวอย่าง ระดับ 3 มีใบ 9, ระดับ 4 มีใบ 2,12,5,11 ผลลัพธ์ = 9 × (2+12+5+11) = 270 ขั้นตอนการแก้ปัญหา (Level Order Traversal) ใช้คิว BFS วนระดับต่อระดับ ในแต่ละระดับ ตรวจสอบโห

  8. หาติดต่อที่ซ้ำกันในรายการติดต่อใน Python

    สมมติว่าเรามีรายการติดต่อ แต่ละรายการมี username, email, phone ในลำดับใดก็ได้ สองติดต่อถือว่าเป็นคนเดียวกันถ้ามี username หรือ email หรือ phone ตรงกัน หาข้อมูลติดต่อที่เป็นคนเดียวกันจัดกลุ่มรวมกัน เช่น 4 ติดต่อ ผลลัพธ์: กลุ่ม [0,2,3] และ [1] ขั้นตอนการแก้ปัญหา (Graph + DFS) สร้างกราฟ: โหนด = ติดต่อ

  9. หาระยะทางสั้นที่สุดจากผู้เฝ้าบัญชีในธนาคารใน Python

    สมมติว่าเรามีเมทริกซ์ที่มีตัวอักษร O (พื้นที่ว่าง), G (ผู้เฝ้าบัญชี), W (กำแพง) ต้องการแทนที่ O ทุกตัวด้วยระยะทางสั้นที่สุดจากผู้เฝ้าบัญชีใกล้ที่สุด (ไม่สามารถผ่านกำแพงได้) ในผลลัพธ์ G → 0, W → -1 ใช้ Multi-source BFS เริ่มจากทุก G พร้อมกัน ตัวอย่างโค้ด Python from collections import deque M = 5 N

  10. หาสับอาร์เรย์จากสองอาร์เรย์ที่มีผลรวมเท่ากันใน Python

    สมมติว่าเรามีอาร์เรย์ P และ Q ขนาด N เก็บตัวเลข 1 ถึง N ต้องการหาสับอาร์เรย์จากทั้งสองอาร์เรย์ที่มีผลรวมเท่ากัน คืนค่าดัชนี หากไม่มี คืนค่า -1 เช่น P = [2, 3, 4, 5, 6], Q = [9, 3, 2, 6, 5] ผลลัพธ์: P[0..2] = 9, Q[0] = 9 ขั้นตอนการแก้ปัญหา (Prefix Sum + Hash Map) แปลง P และ Q เป็น prefix sum ใช้ two

  11. หาลำดับย่อยที่ให้ Bitwise AND และ OR สูงสุดใน Python

    สมมติว่าเรามีอาร์เรย์ n สมาชิก ต้องการหาผลรวมสูงสุดจากการเลือกสองลำดับย่อย (อาจเหมือนกันได้) โดยลำดับแรกคำนวณ Bitwise AND ทุกตัว ลำดับที่สองคำนวณ Bitwise OR ทุกตัว ผลรวมของทั้งสองต้องมากที่สุด เช่น A = [4, 6, 7, 2] ผลลัพธ์คือ 14 (AND สูงสุด = 7 จาก [7], OR สูงสุด = 7 จาก [4,6,7,2]) ขั้นตอนการแก้ปัญห

  12. หาสตริงย่อยที่มีสระครบทุกตัวและไม่มีพยัญชนะใน Python

    สมมติว่าเรามีสตริงตัวพิมพ์เล็ก ต้องการหาสตริงย่อยที่มีสระ (a, e, i, o, u) ครบทุกตัวอย่างน้อย 1 ครั้ง และไม่มีพยัญชนะในสตริงย่อยนั้น เช่น helloworldaeiouaieuonicestring ผลลัพธ์คือ [aeiou, aeioua, aeiouai, aeiouaiu, eioua, eiouai, eiouaiu] ขั้นตอนการแก้ปัญหา วนลูปจุดเริ่มต้น i ทุกตำแหน่ง ขยาย j ไปขวา

  13. หาผลรวมเมทริกซ์ยกเว้นแถวและคอลัมน์ของเซลล์ที่กำหนดใน Python

    สมมติว่าเรามีเมทริกซ์ 2D และชุดดัชนีเซลล์ (i, j) สำหรับแต่ละเซลล์ ต้องการหาผลรวมของสมาชิกทั้งหมดในเมทริกซ์ ยกเว้นแถวที่ i และคอลัมน์ที่ j เช่น เมทริกซ์ 3x3 และ indices = [(0,0), (1,1), (0,1)] ผลลัพธ์คือ [19, 14, 20] ขั้นตอนการแก้ปัญหา คำนวณผลรวมทั้งหมดของเมทริกซ์ คำนวณผลรวมแต่ละแถวและแต่ละคอลัมน์ ส

  14. หาตัวอักษรในสตริงแรกที่อยู่ดัชนีน้อยที่สุดในสตริงที่สองใน Python

    สมมติว่าเรามีสตริง str และ patt ต้องการหาตัวอักษรใน patt ที่ปรากฏใน str ด้วยดัชนีน้อยที่สุด หากไม่มีตัวอักษรใดใน patt อยู่ใน str คืนค่า -1 เช่น str = helloworld, patt = wor ผลลัพธ์คือ o (อยู่ดัชนี 4 ใน str) ขั้นตอนการแก้ปัญหา สร้างแผนที่เก็บดัชนีแรกของแต่ละตัวอักษรใน str วนลูปตัวอักษรใน patt หาตัวท

  15. หาพิกัดมุมที่สี่ของสี่เหลี่ยมผืนผ้าจาก 3 มุมที่กำหนดใน Python

    สมมติว่าเรามีกริด Q x P มีดอกโชค (*) อยู่ 3 จุด แทนมุมของสี่เหลี่ยมผืนผ้า หาพิกัดมุมที่หายไป (1-based indexing) เช่น grid = [.*., ..., *.*] ผลลัพธ์คือ (1, 3) ขั้นตอนการแก้ปัญหา นับจำนวน * ในแต่ละแถวและแต่ละคอลัมน์ แถวที่มี * 1 จุดคือแถวของมุมที่หายไป คอลัมน์ที่มี * 1 จุดคือคอลัมน์ของมุมที่หายไป ตั

  16. นับสตริงย่อยพาลินโดรมที่แตกต่างกันในรูปแบบเรียงลำดับใน Python

    สมมติว่าเรามีสตริงตัวพิมพ์เล็ก ต้องการนับสตริงย่อยพาลินโดรมที่ต่อเนื่องและแตกต่างกันทั้งหมด เช่น level ผลลัพธ์คือ 7 (level, eve, l, e, v, e, l) ขั้นตอนการแก้ปัญหา (คณิตศาสตร์) สตริงย่อยพาลินโดรมที่ต่อเนื่องและแตกต่างกันจะต้องประกอบด้วยตัวอักษรเดียวกันทั้งหมด ดังนั้นสำหรับแต่ละตัวอักษรที่ปรากฏ f ครั้

  17. นับสตริงย่อยที่จัดเรียงตัวอักษรได้เป็นคำที่กำหนดใน Python

    สมมติว่าเรามีสตริง S (ตัวพิมพ์เล็ก) ต้องการนับสตริงย่อยยาว 4 ตัวอักษร ที่จัดเรียงตัวอักษรแล้วได้คำว่า bird เช่น birdb ผลลัพธ์คือ 2 (สตริงย่อย bird และ irdb) ขั้นตอนการแก้ปัญหา วนลูป i จาก 0 ถึง len(s)-4 นับตัวอักษร b, i, r, d ในสตริงย่อย 4 ตัวอักษร ถ้ามีครบ 1 ตัวแต่ละตัว เพิ่มนับ ตัวอย่างโค้ด Pyth

  18. หาระยะทางรวมในการเก็บหินที่วางห่างเท่ากันใน Python

    สมมติว่ามีการแข่งขัน หินวางห่างกัน 4 หน่วย หน่วยแรกห่างจากถัง 6 หน่วย ผู้แข่งเริ่มจากถัง วิ่งเก็บหินใกล้สุด กลับวางถัง วิ่งเก็บหินถัดไป... จนครบ n ก้อน หาระยะทางรวม เช่น n = 5 ผลลัพธ์คือ 140 สูตร: D = 2 × [6n + 2n(n-1)] ตัวอย่างโค้ด Python def find_distance(n): return 2 * (6 * n + 2 * (n - 1) *

  19. หาองค์ประกอบที่ทุกค่าด้านซ้ายน้อยกว่า และด้านขวาใหญ่กว่าใน Python

    สมมติว่าเรามีอาร์เรย์ ต้องการหาองค์ประกอบที่ทุกค่าด้านซ้ายน้อยกว่ามัน และทุกค่าด้านขวาใหญ่กว่ามัน คืนค่าดัชนี หากไม่มี คืนค่า -1 เช่น A = [6, 2, 5, 4, 7, 9, 11, 8, 10] ผลลัพธ์คือ 4 (ค่า 7) ขั้นตอนการแก้ปัญหา สร้างอาร์เรย์ max_left โดย max_left[i] = max(max_left[i-1], arr[i-1]) ตั้ง min_right = infi

  20. หาตัวอักษรแรกที่ไม่ซ้ำในสตรีมข้อความใน Python

    สมมติว่าเรามีสตริง (หรือสตรีมตัวอักษร) ต้องการหาตัวอักษรแรกที่ปรากฏเพียงครั้งเดียว คืนค่าดัชนี หากไม่มี คืนค่า -1 เช่น people → o ดัชนี 2; abaabba → -1 ขั้นตอนการแก้ปัญหา สร้างแผนที่นับความถี่ของแต่ละตัวอักษร วนลูปสตริงอีกครั้ง หาตัวแรกที่ความถี่ = 1 ตัวอย่างโค้ด Python class Solution: def fir

Total 9001 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:158/451  20-คอมพิวเตอร์/Page Goto:1 152 153 154 155 156 157 158 159 160 161 162 163 164