Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java
Java
  1. โปรแกรม Java พิมพ์ Permutations ที่ไม่ซ้ำของสตริง

    โจทย์: สร้าง permutations ทั้งหมดของสตริง โดยไม่ซ้ำ (distinct) สตริงที่มีตัวอักษรซ้ำ เช่น mnqm ต้องกรอง permutations ซ้ำออก ตัวอย่างโค้ด (Recursive + Set) import java.util.*; public class Demo { // ใช้ Set เพื่อกรอง duplicates อัตโนมัติ static Set distinctPermutations(String str) {

  2. โปรแกรม Java พิมพ์ Matrix แบบ Z Shape

    โจทย์: พิมพ์องค์ประกอบของ matrix ตามรูป Z ลำดับ: แถวแรก (ซ้าย→ขวา) → แนวทแยงมุม (ขวาบน→ซ้ายล่าง) → แถวสุดท้าย (ซ้าย→ขวา) ตัวอย่างโค้ด public class Demo { public static void zShape(int[][] matrix, int n) { // 1. แถวแรก for (int j = 0; j < n; j++) { System.out.print(ma

  3. Private Methods ใน Java 9 Interface

    ใหม่ใน Java 9: Private Methods ใน Interface Java 9 อนุญาตให้ interface มี private และ private static methods ช่วยลดโค้ดซ้ำใน default/static methods ตัวอย่าง interface MyInterface { // Abstract method void multiply(int a, int b); // Default method ใช้ private method default void

  4. หาคู่ 숫자ที่ผลรวมเท่ากับเป้าหมายใน Balanced BST (Java)

    โจทย์ กำหนด Balanced BST และ target sum หาว่ามีคู่โหนดไหนที่ผลรวม = target หรือไม่ Time complexity O(n), Space O(log n) ห้ามแก้ไข BST วิธีแก้: Inorder Traversal + Two Pointers Inorder traversal ของ BST ให้ sorted array ใช้ two pointers (หนึ่งหัว, หนึ่งท้าย) หาคู่ที่ผลรวม = target Time: O(n) สำหรับ

  5. โปรแกรม Java หา Longest Palindromic Subsequence (LPS)

    แนวคิด: Dynamic Programming + LCS Longest Palindromic Subsequence = Longest Common Subsequence (LCS) ระหว่างสตริงต้นฉบับกับสตริงที่กลับลำดับ (reverse) ตัวอย่างโค้ด (เวอร์ชันปรับปรุง) public class Demo { // LCS แบบปกติ คืนค่าสตริง LPS static String longestSeq(String s1, String s2) {

  6. Thread Priority ใน Java Multithreading

    ความสำคัญของ Thread Priority Thread scheduler กำหนดลำดับการรัน thread ตาม priority (1-10) ค่าสูง = โอกาสรันมากกว่า แต่ไม่รับประกัน ลำดับการทำงานจริง ขึ้นกับ OS และ JVM implementation ค่าคงที่ Priority Thread.MIN_PRIORITY = 1 Thread.NORM_PRIORITY = 5 (default) Thread.MAX_PRIORITY = 10 เมธอดหลัก

  7. ค่าสูงสุดของ Integer ใน Java (Integer.MAX_VALUE)

    ค่าคงที่สำคัญของคลาส Integer public class Demo { public static void main(String[] args) { System.out.println(The type is: + Integer.TYPE); // int System.out.println(The size is: + Integer.SIZE); // 32 (bits) System.out.println(The max value of integer is: + Integ

  8. Type Erasure ใน Java Generics

    Java ใช้ Type Erasure เพื่อรองรับ Generics และตรวจสอบชนิดข้อมูลอย่างเข้มงวดขณะคอมไพล์ แล้วลบข้อมูลชนิดออกระหว่างรันไทม์ กลไกการทำงาน พารามิเตอร์ชนิดใน generic type ถูกแทนที่ด้วย bound (ถ้ามี) หรือ Object (ถ้า unbounded) - bytecode จึงมีแค่ class, method, interface ธรรมดา แทรก type cast เพื่อรักษาค

  9. ประเภทของ Reference ใน Java: Strong, Weak, Soft, Phantom

    Java มี reference 4 ระดับ ต่างกันในวิธีที่ Garbage Collector จัดการ: 1. Strong Reference (ปกติ) ค่า default ของ reference ทุกตัว อ็อบเจกต์ที่มี strong reference อยู่ ไม่ถูก GC จนกว่าจะตัด reference ออก (set null) class Demo { /* ... */ } public class DemoExample { public static void main(Strin

  10. Unreachable Statement ด้วยตัวแปร final ใน Java

    Unreachable Statement คืออะไร? คำสั่งที่ไม่เคยถูกดำเนินการระหว่างรันโปรแกรม สาเหตุหลักมี 3 อย่าง: มีคำสั่ง return ก่อนบรรทัดนั้น มีลูปไม่รู้จบ (infinite loop) การทำงานถูกบังคับหยุดก่อนถึงบรรทัดนั้น ตัวอย่าง: คอมไพเลอร์จับได้ด้วยตัวแปร final class DemoExample { final int a = 56, b = 99;

  11. Unreachable Statement ด้วยตัวแปร non-final ใน Java

    ตัวอย่าง: วนลูปไม่รู้จบด้วยตัวแปร non-final class DemoExample { int a = 2, b = 3; void displayMsg() { while (a < b) { System.out.println(The first variable is greater than the second); } System.out.println(This is an unreachable statement); // ไม่ถึงบ

  12. ตัวอย่าง Soft Reference และ Phantom Reference ใน Java

    Soft Reference - ใช้สำหรับแคชที่คำนึงถึงหน่วยความจำ Soft Reference เหมาะสำหรับการสร้างแคชที่สามารถปล่อยหน่วยความจำได้เมื่อ JVM ต้องการพื้นที่ ตัวอย่างโค้ด import java.lang.ref.SoftReference; class Demo { public void displayMsg() { System.out.println(Hello there); } } public class D

  13. คุณสมบัติของ C++ ที่ไม่มีใน Java

    มีคุณสมบัติหลายอย่างที่พบใน C++ แต่ไม่มีใน Java นี่คือรายการสำคัญบางส่วน: ไม่มีตัวเลือก unsigned int ใน Java - Java ไม่รองรับชนิดข้อมูลจำนวนเต็มที่ไม่มีเครื่องหมาย ไม่มี destructor และคำสั่ง delete - เนื่องจาก Garbage Collector ทำหน้าที่จัดการหน่วยความจำอัตโนมัติ ไม่มี friend classes หรือ friend fu

  14. Default Virtual Behavior แตกต่างกันอย่างไรระหว่าง C++ และ Java

    ใน C++ เมธอดสมาชิกของคลาสเป็น non-virtual โดยค่าเริ่มต้น สามารถทำให้เป็น virtual ได้โดยระบุคีย์เวิร์ด แต่ใน Java เมธอดเป็น virtual โดยค่าเริ่มต้น และสามารถทำให้เป็น non-virtual ได้ด้วยคีย์เวิร์ด final ตัวอย่าง class base_class{ public void display_msg(){ System.out.println(The display_

  15. Verification ใน Java (JVM) คืออะไร

    เมื่อโหลด Bytecode โดย JVM (ด้วยไฟล์ .class) Bytecode จะถูกตรวจสอบความถูกต้องโดย Verifier Verifier ตรวจสอบการเชื่อมโยง (linking) เพื่อให้การดำเนินการมีประสิทธิภาพ ทำให้ Interpreter ทำงานได้มีประสิทธิภาพมากขึ้น กระบวนการนี้เรียกว่า Verification ตัวอย่าง public class Demo{ private float my_val;

  16. ความเชื่อมโยงระหว่าง Java และ Blockchain

    Java และ Blockchain: ความสัมพันธ์และการประยุกต์ใช้ Blockchain เป็นเทคโนโลยีบัญชีแยกประเภทกระจาย (Distributed Ledger Technology - DLT) ที่เก็บข้อมูลเป็นบล็อกเชื่อมต่อกันด้วย Cryptographic Hash Java เป็นภาษาหนึ่งที่นิยมพัฒนา Blockchain Applications มากที่สุด เหตุผลที่ Java นิยมใน Blockchain Plat

Total 1935 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:77/97  20-คอมพิวเตอร์/Page Goto:1 71 72 73 74 75 76 77 78 79 80 81 82 83