Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python
Python
  1. ผลคูณมากที่สุดของหลักติดกันใน Python

    สมมติว่าเรามีตัวเลขสองตัว num และ k เราต้องหาผลคูณที่มากที่สุดของ k หลักติดกันใน num ต้องจำไว้ว่า num รับประกันว่ามีหลักมากกว่าหรือเท่ากับ k ตัวอย่าง หากอินพุตคือ num = 52689762 และ k = 4 ผลลัพธ์จะเป็น 3024 ผลคูณมากที่สุดของ 4 หลักติดกันคือ (8*9*7*6) = 3024 ขั้นตอนการแก้ปัญหา largest := 0 cand :=

  2. Latin Square ใน Python

    Latin Square เป็นเมทริกซ์ที่มีรูปแบบพิเศษ ลองดูตัวอย่างต่างๆ เพื่อศึกษารูปแบบ 1 2 2 1 1 2 3 3 1 2 2 3 1 1 2 3 4 4 1 2 3 3 4 1 2 2 3 4 1 Latin Square ที่ได้จะมีขนาดต่างกัน แต่ถ้าสังเกตรูปแบบของเมทริกซ์ข้างต้นอย่างละเอียด จะพบว่าตัวเลขสุดท้ายของแถวก่อนหน้าจะกลายเป็นองค์ประกอบแรกของแถวถัดไป นั่นคือรูปแ

  3. ความยาวของ Linked List ใน Python

    สมมติว่าเรามี singly linked list เราต้องหาความยาวของมัน Linked list มีฟิลด์ next และ val ตัวอย่าง หากอินพุตคือ [2 → 4 → 5 → 7 → 8 → 9 → 3] ผลลัพธ์จะเป็น 7 ขั้นตอนการแก้ปัญหา count := 0 ในขณะที่ node ไม่ใช่ null: count := count + 1 node := next ของ node คืนค่า count การใช้งาน class ListNode:

  4. สร้างบอทเน็ตของคุณเอง (Build Your Own Botnet)

    BYOB ให้เฟรมเวิร์กสำหรับนักวิจัยความปลอดภัยและนักพัฒนา เพื่อสร้างและดำเนินการบอทเน็ตพื้นฐาน เพื่อเพิ่มความเข้าใจเกี่ยวกับมัลแวร์ที่ซับซ้อนซึ่งติดเชื้ออุปกรณ์ล้านๆ ทุกปีและสร้างบอทเน็ตสมัยใหม่ เพื่อปรับปรุงความสามารถในการพัฒนามาตรการต่อต้านภัยคุกคามเหล่านี้ ออกแบบมาเพื่อให้นักพัฒนาสามารถนำโค้ดของตนเอ

  5. รหัส QR อันตรายกับ QRGen

    รหัส QR เป็นรูปแบบข้อมูลที่อ่านโดยเครื่องได้ ใช้สำหรับสิ่งที่ต้องสแกนอัตโนมัติ สามารถนำช่องโหว่ทั่วไปไปใช้ประโยชน์โดยการใส่โค้ดอันตรายลงในรหัส QR แบบกำหนดเอง เนื่องจากรหัส QR อยู่ทุกที่ ตั้งแต่บรรจุภัณฑ์ผลิตภัณฑ์ ไปจนถึงบัตรขึ้นเครื่องบิน ฮักเกอร์ใช้เครื่องมือ QRGen สร้างรหัส QR อันตรายเพื่อโจมตีอุป

  6. โปรแกรมตรวจสอบว่าการหมุนทุกรูปของตัวเลขเป็นจำนวนเฉพาะหรือไม่ใน Python

    สมมติว่าเรามีตัวเลข n เราต้องตรวจสอบว่าการหมุนทุกรูปของ n เป็นจำนวนเฉพาะหรือไม่ ตัวอย่าง หากอินพุตคือ n = 13 ผลลัพธ์จะเป็น True เนื่องจาก 13 เป็นจำนวนเฉพาะ และ 31 ก็เป็นจำนวนเฉพาะเช่นกัน ขั้นตอนการแก้ปัญหา n := n เป็นสตริง ลูปจำนวนครั้งเท่ากับความยาวของ n: ถ้า n ไม่ใช่จำนวนเฉพาะ ให้คืนค่า False

  7. โปรแกรมหาจำนวนกลุ่มหมุนที่แตกต่างกันของลิสต์คำใน Python

    สมมติว่าเรามีกลุ่มหมุนสำหรับสตริงที่เก็บการหมุนทั้งหมดที่ไม่ซ้ำกัน หากอินพุตคือ 567 สามารถหมุนได้เป็น 675 และ 756 ซึ่งทั้งหมดอยู่ในกลุ่มหมุนเดียวกัน ตอนนี้ถ้าเรามีลิสต์ของสตริง words เราต้องจัดกลุ่มแต่ละคำตามกลุ่มหมุนของมัน และหาจำนวนกลุ่มทั้งหมด ตัวอย่าง หากอินพุตคือ words = [xyz, ab, ba, c, yzx]

  8. โปรแกรมถอดรหัสสตริงแบบ Run-Length กลับเป็นรูปแบบปกติใน Python

    สมมติว่าเรามีสตริง s ซึ่งเป็นสตริงที่เข้ารหัสแบบ Run-Length เราต้องหาสตริงต้นฉบับที่ถอดรหัสแล้ว ตัวอย่างเช่น สตริง BBBBAAADDCBB จะถูกเข้ารหัสเป็น 4B3A2D1C2B ตัวอย่าง หากอินพุตคือ s = 4B3A2D1C2B ผลลัพธ์จะเป็น BBBBAAADDCBB ขั้นตอนการแก้ปัญหา output := สตริงว่าง num := สตริงว่าง สำหรับแต่ละตัวอักษร

  9. โปรแกรมเข้ารหัสสตริงแบบปกติเป็นรูปแบบ Run-Length ใน Python

    สมมติว่าเรามีสตริง s เราต้องเข้ารหัสนี้โดยใช้เทคนิค Run-Length Encoding (RLE) ซึ่งเป็นวิธีเข้ารหัสสตริงที่รวดเร็วและง่าย แนวคิดคือ รวมตัวอักษรที่ซ้ำกันติดกันเป็นจำนวนนับและตัวอักษรตัวนั้น ตัวอย่าง หากอินพุตคือ s = BBBBAAADDCBB ผลลัพธ์จะเป็น 4B3A2D1C2B ขั้นตอนการแก้ปัญหา res := สตริงว่าง tmp := ตั

  10. โปรแกรมหาสตริงสั้นที่สุดหลังลบบิตติดกันที่ต่างกันใน Python

    สมมติว่าเรามีสตริงไบนารี s เราสามารถลบตัวอักษรสองตัวที่อยู่ติดกันได้หากพวกมันต่างกัน สุดท้ายเราต้องหาความยาวของสตริงที่เล็กที่สุดที่เราสามารถได้ หากเราทำการดำเนินการนี้ได้จำนวนครั้งเท่าก็ตาม ตัวอย่าง หากอินพุตคือ s = 1100011 ผลลัพธ์จะเป็น 1 เนื่องจากหลังลบ 10 จะได้ 10011 แล้วลบ 10 อีกครั้งได้ 011 แ

  11. โปรแกรมหาสับลิสต์สั้นที่สุดที่เมื่อเรียงแล้วทั้งลิสต์จะเรียงใน Python

    สมมติว่าเรามีรายการตัวเลขชื่อ nums เราต้องการหาความยาวของสับลิสต์ที่สั้นที่สุดใน nums ซึ่งถ้าเรียงสับลิสต์นั้น แล้วอาร์เรย์ทั้งหมด nums จะถูกเรียงในลำดับเพิ่มขึ้น ตัวอย่าง หากอินพุตคือ nums = [1,2,5,4,9,10] ผลลัพธ์จะเป็น 2 เนื่องจากการเรียงสับลิสต์ [5, 4] จะได้ [1, 2, 4, 5, 9, 10] ขั้นตอนการแก้ปัญ

  12. โปรแกรมตรวจสอบว่าสามารถยืนห่างจากคนที่ใกล้ที่สุดอย่างน้อย k ระยะทางใน Python

    สมมติว่าเรามีสตริง s และตัวเลข k ตัวอักษรแต่ละตัวในสตริงจะเป็นจุด (.) หรือ x โดยจุดหมายถึงพื้นที่ว่าง และ x หมายถึงคน เราต้องตรวจสอบว่าสามารถเลือกตำแหน่งมายืนได้หรือไม่ ที่ระยะห่างระหว่างเรากับคนที่ใกล้ที่สุดอย่างน้อย k (ระยะห่างระหว่างดัชนีที่อยู่ติดกันคือ 1) ตัวอย่าง หากอินพุตคือ s = x...x.., k =

  13. โปรแกรมนับจำนวนองค์ประกอบที่อยู่ในตำแหน่งที่ถูกต้องใน Python

    สมมติว่าเรามีรายการตัวเลขที่เรียกว่า nums เราต้องการหาจำนวนองค์ประกอบที่อยู่ในดัชนีที่ถูกต้องเมื่อรายการถูกเรียงลำดับ ตัวอย่าง หากอินพุตคือ [2, 8, 4, 5, 11] ผลลัพธ์จะเป็น 2 เนื่องจากองค์ประกอบ 2 และ 11 อยู่ในตำแหน่งที่ถูกต้อง ลำดับที่เรียงแล้วจะเป็น [2, 4, 5, 8, 11] ขั้นตอนการแก้ปัญหา s := เรียงล

  14. โปรแกรมจัดเรียงอีเมลสำคัญจากกล่องจดหมายต่างๆ ใน Python

    ให้ลิสต์กล่องจดหมาย แต่ละกล่องมีลิสต์สตริง: J=junk, P=personal, W=work รอบวน (round-robin) ตั้งแต่กล่องแรก กรอง J ออก รวมเป็นลิสต์เดียว ตัวอย่าง: [[W,P],[J,P,J],[W]] → [W,W,P,P] (ลำดับ: W, J, W, P, P, J → กรอง J) อัลกอริธึม Round Robin เก็บ index ปัจจุบันของแต่ละกล่อง ลูปจนกว่าทุกกล่องหมด: เดินกล่อ

  15. โปรแกรมบีบอัดลิสต์จากขวา-ซ้ายจนเหลืออีเล็มน์ต์เดียวใน Python

    บีบอัดลิสต์: รวมคู่แรกและคู่สุดท้ายซ้ำๆ จนเหลือ 1 อีเล็มน์ต์ คืนสถานะทุกขั้นตอน ตัวอย่าง: [10,20,30,40,50,60] → [[10,20,30,40,50,60], [30,30,40,110], [60,150], [210]] อัลกอริธึม 1: ยาว 2: รวมทั้งคู่ ยาว 3: รวมทั้งสาม อื่น: รวมคู่แรก, คงกลางไว้, รวมคู่สุดท้าย การนำไปใช้ 1: if len(nums

  16. โปรแกรมตรวจสอบว่าลิสต์เพิ่มหรือลดอย่างเคร่งครัดใน Python

    ตรวจสอบลิสต์ตัวเลขว่า strictly increasing (เพิ่มทุกขั้น) หรือ strictly decreasing (ลดทุกขั้น) ตัวอย่าง: [10,12,23,34,55] → True (strictly increasing) อัลกอริธึม ถ้าความยาว ≤ 2 → True เสมอ ถ้ามีค่าซ้ำ → False เรียงลิสต์ → เปรียบเทียบกับต้นฉบับและ reversed การนำไปใช้ class Solution: def solve(se

  17. โปรแกรมบวกตัวเลขที่เก็บเป็นสตริงใน Python

    บวกตัวเลขขนาดใหญ่ที่เก็บเป็นสตริง คืนผลลัพธ์เป็นสตริง (Python รองรับ big integer โดยตรง) ตัวอย่าง: 256478921657 + 5871257468 = 262350179125 การนำไปใช้ class Solution: def solve(self, a, b): return str(int(a) + int(b)) ob = Solution() print(ob.solve(256478921657, 5871257468)) # 26235017

  18. โปรแกรมตรวจสอบการแปลงสตริงด้วยการขยับตัวอักษรตามเข็มนาฬิกาใน Python

    ให้สตริง p, q และจำนวน r ตรวจสอบว่า p → q ได้โดยขยับตัวอักษรตามเข็มนาฬิกา (a→b→c...→a) รวมไม่เกิน r ครั้ง ตัวอย่าง: p=abc, q=ccc, r=3 → True (a→c: 2, b→c: 1, รวม 3) อัลกอริธึม ถ้าความยาวต่างกัน หรือ r=0 แต่ p≠q → False สะสม shift: diff = ord(q[i]) - ord(p[i]); ถ้าติดลบ +26 ถ้าสะสมเกิน r → False กา

  19. โปรแกรมตรวจสอบว่าค่าอยู่ใน BST หรือไม่ใน Python

    ให้ Binary Search Tree และค่า val ตรวจสอบว่า val อยู่ในต้นไม้หรือไม่ คุณสมบัติ BST: โหนดซ้าย < ราก < โหนดขวา → ค้นหาได้ใน O(h) อัลกอริธึม Recursive ถ้า root เป็น None → False ถ้า root.val == val → True val → ค้นหาด้านซ้าย, มิฉะนั้น ค้นหาด้านขวา การนำไปใช้ val: return self.solve(root.

  20. โปรแกรมตรวจสอบการแมป 1-to-1 ระหว่างสตริงสองสตริงใน Python

    ให้สตริง s, t ตรวจสอบว่าสร้าง mapping 1-to-1 จากตัวอักษร s ไป t ได้หรือไม่ (ลำดับคงที่) ตัวอย่าง: s=papa, t=lili → True (p→l, a→i) อัลกอริธึม Two Dictionaries s_dict: mapping s→t, t_dict: mapping t→s เดินคู่ตัวอักษร: ถ้า mapping ชน → False, มิฉะนั้นสร้าง mapping ใหม่ การนำไปใช้ class Solution:

Total 9001 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:170/451  20-คอมพิวเตอร์/Page Goto:1 164 165 166 167 168 169 170 171 172 173 174 175 176