Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript
JavaScript
  1. สร้างอัลกอริทึมเข้ารหัส/ถอดรหัส URL สั้น (Short URL) ใน JavaScript

    ปัญหา สร้างฟังก์ชัน encrypt() (ย่อ URL ยาวเป็นสั้น) และ decrypt() (ขยาย URL สั้นกลับเป็นต้นฉบับ) โดยใช้ Base64 encoding ตัวอย่าง const url = https://developer.mozilla.org/en-US/docs/Web/JavaScript; const encrypt = (longUrl) => { const encodedUrl = Buffer.from(longUrl, binary).toString(base64

  2. หาความต่างน้อยที่สุดใน Binary Search Tree (BST) ด้วย JavaScript

    ปัญหา ได้รับรากของ BST ที่เก็บตัวเลข ให้หาความต่างสัมบูรณ์น้อยที่สุดระหว่างโหนดใดๆ สองโหนด ตัวอย่าง BST: 1 \ 3 / 2 ผลลัพธ์: 1 (เพราะ |1-2| = |3-2| = 1) โค้ดตัวอย่าง class Node{ constructor(data) { this.data = data; this.left = null; this.right = null; } }; class BinarySearchTree{ constructor()

  3. เลื่อนตัวอักษรในสตริงตามอาร์เรย์จำนวน (Character Shifting) ใน JavaScript

    ปัญหา ได้รับสตริง str และอาร์เรย์ arr ความยาวเท่ากัน แต่ละตัวอักษรใน str จะถูกเลื่อนไปข้างหน้าตามจำนวนใน arr (วนรอบ z→a) ตัวอย่าง const str = dab; const arr = [1, 4, 6]; d+1=e, a+4=e, b+6=h → ผลลัพธ์ eeh โค้ดตัวอย่าง const str = dab; const arr = [1, 4, 6]; const shiftString = (str = , arr = [])

  4. เลื่อนตัวอักษรในสตริงตามคำสั่ง (Shift Operations) ใน JavaScript

    ปัญหา ได้รับสตริง str และอาร์เรย์คำสั่ง arr ที่แต่ละอิลิเมนต์เป็น [direction, amount] โดย direction: 0=ซ้าย, 1=ขวา ต้องดำเนินการเลื่อนตามลำดับและคืนสตริงผลลัพธ์ ตัวอย่าง const str = abc; const arr = [[0, 1], [1, 2]]; ขั้นตอน: [0,1] ซ้าย 1 → bca, [1,2] ขวา 2 → cab → ผลลัพธ์ cab โค้ดตัวอย่าง const

  5. หาตัวเลขที่หายไปในลำดับเลขคณิต (Arithmetic Progression) ด้วย JavaScript

    ลำดับเลขคณิต (AP) ลำดับที่ความต่างระหว่างพจน์ติดกันคงที่ เช่น 5, 7, 9, 11, 13... ปัญหา ได้รับอาร์เรย์ที่เป็น AP แต่ขาดตัวเลขหนึ่งตัว ให้หาตัวเลขที่หายไปในหนึ่งรอบการวน (one iteration) ตัวอย่าง const arr = [7, 13, 19, 31, 37, 43]; ตัวเลขที่หายคือ 25 (ระหว่าง 19 และ 31) โค้ดตัวอย่าง const arr = [7,

  6. นับ Confusing Number ในช่วง 1 ถึง n ด้วย JavaScript

    Confusing Number คืออะไร? ตัวเลขที่เมื่อหมุน 180 องศา (ทั้งแนวตั้งและแนวนอน) จะกลายเป็นตัวเลขอื่นที่ถูกต้อง และตัวเลขใหม่นั้นต้องมีอยู่ในช่วง 1 ถึง n ด้วย ตัวเลขที่หมุนได้คือ 0,1,6,8,9 (6↔9, 0,1,8 คงเดิม) ปัญหา รับตัวเลข num สร้างอาร์เรย์ 1 ถึง num นับว่ามี Confusing Number กี่ตัว ตัวอย่าง const n

  7. ตรวจสอบผลรวมหลักของตัวเลขที่น้อยที่สุดในอาร์เรย์ (JavaScript)

    ปัญหา ฟังก์ชันรับอาร์เรย์ตัวเลข หาตัวเลขที่น้อยที่สุด แล้วคำนวณผลรวมของหลัก (digit sum) หากเป็นเลขคู่คืน true มิฉะนั้น false ตัวอย่าง const arr = [12, 657, 23, 56, 34, 678, 42]; ตัวเลขน้อยสุดคือ 12 → 1+2=3 (คี่) → ผลลัพธ์ false โค้ดตัวอย่าง const arr = [12, 657, 23, 56, 34, 678, 42]; const addDig

  8. หา GCD (ตัวหารร่วมมาก) ของสตริงสองสตริงใน JavaScript

    แนวคิด เหมือน GCD ของตัวเลข แต่สำหรับสตริง: หาสตริงย่อยที่ยาวที่สุดซ้ำได้ทั้งสองสตริง ตัวอย่าง const str1 = abcabc; const str2 = abc; GCD คือ abc โค้ดตัวอย่าง (Recursive) const str1 = abcabc; const str2 = abc; const findGCD = (str1 = , str2 = ) => { if (str1 + str2 !== str2 + str1){

  9. ตรวจสอบ Word Square ใน JavaScript

    Word Square คืออะไร? Word Square เป็นตารางสี่เหลี่ยมที่เติมคำไว้ ทำให้อ่านแนวนอนและแนวตั้งได้คำเหมือนกันทั้งหมด ตัวอย่าง: H E A R T E M B E R A B U S E R E S I N T R E N D ปัญหา เขียนฟังก์ชันรับอาร์เรย์คำ arr คืน true หากเป็น Word Square ที่ถูกต้อง มิฉะนั้น false ตัวอย่าง const arr = [abcd, bnrt,

  10. หาตัวอักษรที่มากกว่าเป้าหมายและน้อยที่สุดในอาร์เรย์ที่เรียงแล้ว (JavaScript)

    ปัญหา ได้รับอาร์เรย์ตัวอักษรพิมพ์เล็กที่เรียงลำดับแล้ว letters และตัวอักษรเป้าหมาย target ต้องการหาตัวอักษรในอาร์เรย์ที่มีค่าน้อยที่สุดแต่ยังมากกว่า target โดยถ้าหมดตัวอักษรที่มากกว่า ให้วนกลับมาที่ตัวแรก (wrap around) ตัวอย่าง const arr = [c, f, j]; const target = a; ผลลัพธ์: c โค้ดตัวอย่าง (Bin

  11. นับ subsequence แบบพาลินโดรมทั้งหมดในสตริงด้วย JavaScript

    พาลินโดรม (Palindrome) ลำดับตัวอักษรที่อ่านจากหน้าหรือหลังได้เหมือนกัน เช่น aba, madam, did ปัญหา เขียนฟังก์ชัน JavaScript ที่รับสตริง (ประกอบด้วย a, b, c, d เท่านั้น) และคืนจำนวน subsequence แบบพาลินโดรมทั้งหมด (ต่อเนื่องหรือไม่ต่อเนื่องก็ได้) ตัวอย่าง const str = bccb; ผลลัพธ์: 6 เพราะมีพาลินโดร

  12. แบ่งอาร์เรย์เป็น n ส่วนที่มีผลรวมเท่ากันใน JavaScript

    ปัญหา เราต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ของตัวเลข arr เป็นอาร์กิวเมนต์แรก และตัวเลข num เป็นอาร์กิวเมนต์ที่สอง ฟังก์ชันควรกำหนดว่าสามารถกระจายองค์ประกอบของอาร์เรย์ arr เข้าไปใน num กลุ่มได้หรือไม่ โดยที่ทุกกลุ่มต้องมีผลรวมเท่ากัน หากมีวิธีการใดๆ ที่ทำได้ ให้คืนค่า true มิฉะนั้นคืน false

  13. การตรวจสอบความเป็นเอกประสงค์ในอาร์เรย์ด้วย JavaScript

    เราต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ตัวเลขเป็นอาร์กิวเมนต์เดียว ฟังก์ชันต้องคืน true ถ้าตัวเลขทุกตัวในอาร์เรย์ปรากฏเพียงครั้งเดียว (คือตัวเลขทั้งหมดเป็นเอกประสงค์) และ false ถ้าไม่ใช่ ตัวอย่าง ถ้าอาร์เรย์นำเข้าคือ: const arr = [12, 45, 6, 34, 12, 57, 79, 4]; ผลลัพธ์ควรเป็น: const output =

  14. การหาตัวเลขที่ไม่ซ้ำและมากที่สุดในอาร์เรย์ด้วย JavaScript

    เราต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์จำนวนเต็มเป็นอาร์กิวเมนต์เดียว ฟังก์ชันต้องวนลูปผ่านอาร์เรย์และเลือกตัวเลขที่มากที่สุดซึ่งปรากฏเพียงครั้งเดียวในอาร์เรย์ คืนค่าตัวเลขนี้ และถ้าไม่มีตัวเลขที่ไม่ซ้ำ ให้คืน -1 เรายังทราบว่าค่าสูงสุดของสมาชิกอาร์เรย์ไม่เกิน 100 และมากกว่า 0 คือ: 0 < arr[i]

  15. การเลือกสมาชิกที่มีค่าเท่ากับดัชนีใน JavaScript

    เราต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ตัวเลขเป็นอาร์กิวเมนต์เดียว ฟังก์ชันต้องสร้างและคืนอาร์เรย์ใหม่จากอาร์เรย์เดิม อาร์เรย์ใหม่ควรมีสมาชิกทั้งหมดจากอาร์เรย์เดิมที่มีค่าเท่ากับดัชนีที่วางอยู่ สังเกตว่าเราต้องตรวจสอบค่าและดัชนีโดยใช้ 1-based index ไม่ใช่ 0-based index แบบเดิม ตัวอย่าง ถ้าอ

  16. การตรวจสอบการเรียงสับเปลี่ยนของพาลินโดรมใน JavaScript

    เราต้องเขียนฟังก์ชัน JavaScript ที่รับสตริงเป็นอาร์กิวเมนต์เดียว ภารกิจคือตรวจสอบว่าการจัดเรียงใหม่ของตัวอักษรในสตริงสามารถให้สตริงพาลินโดรมได้หรือไม่ ถ้าได้คืน true มิฉะนั้น false ตัวอย่าง ถ้าสตริงนำเข้าคือ: const str = amadm; ผลลัพธ์ควรเป็น: const output = true; เพราะสตริงสามารถจัดเรียงใหม่เป็น m

  17. การแปลงสตริงเว้นวรรคเป็น URL ใน JavaScript

    ใน URL เว็บ หากเราเว้นวรรคใน URL เบราว์เซอร์จะแทนที่ช่องว่างทั้งหมดด้วยสตริง %20 อัตโนมัติ เราต้องเขียนฟังก์ชัน JavaScript ที่รับสตริงเป็นอาร์กิวเมนต์เดียว ฟังก์ชันต้องสร้างและคืนสตริงใหม่ที่ช่องว่างทุกที่ถูกแทนที่ด้วย %20 ตัวอย่าง ถ้าสตริงนำเข้าคือ: const str = some extra Space; ผลลัพธ์ควรเป็น: c

  18. การบีบอัดสตริงใน JavaScript

    เราต้องเขียนฟังก์ชัน JavaScript ที่รับสตริงที่อาจมีตัวอักษรซ้ำติดกัน ฟังก์ชันต้องบีบอัดสตริงแบบนี้: k4j ถ้าความยาวสตริงที่บีบอัดมากกว่าหรือเท่ากับต้นฉบับ ให้คืนสตริงต้นฉบับ ตัวอย่าง aab บีบอัดได้ a2b1 แต่ความยาวเพิ่มเป็น 4 ดังนั้นคืน aab ตัวอย่างโค้ด { let res = ; let count = 1; for(let i

  19. ผลรวมของสองสมาชิกที่มากที่สุดแต่ยังน้อยกว่า n ใน JavaScript

    เราต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ตัวเลข arr เป็นอาร์กิวเมนต์แรก และตัวเลข num เป็นอาร์กิวเมนต์ที่สอง ฟังก์ชันต้องหาสองตัวเลขที่ผลรวมมากที่สุดในอาร์เรย์แต่ยังน้อยกว่า num ถ้าไม่มีคู่ไหนผลรวมน้อยกว่า num ให้คืน -1 ตัวอย่าง ถ้าอาร์เรย์และตัวเลขนำเข้าคือ: const arr = [34, 75, 33, 23, 1, 24

  20. การหาสมาชิกที่มีตัวก่อนและตัวหลังอยู่ในอาร์เรย์ด้วย JavaScript

    เราต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์จำนวนเต็มเป็นอาร์กิวเมนต์เดียว ฟังก์ชันต้องสร้างและคืนอาร์เรย์ใหม่ที่มีสมาชิกทั้งหมดจากอาร์เรย์เดิมที่มีทั้งตัวก่อนหน้า (predecessor) และตัวถัดไป (successor) อยู่ในอาร์เรย์ นั่นคือ ถ้าตัวเลข num อยู่ในอาร์เรย์เดิม ควรอยู่ในอาร์เรย์ผลลัพธ์ก็ต่อเมื่อ num-1

Total 5941 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:30/298  20-คอมพิวเตอร์/Page Goto:1 24 25 26 27 28 29 30 31 32 33 34 35 36