Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

โปรแกรม Java คำนวณความแตกต่างระหว่างสองชุด


ในบทความนี้ เราจะเข้าใจวิธีการคำนวณความแตกต่างระหว่างสองชุด ชุดคือคอลเลกชันที่ไม่สามารถมีองค์ประกอบที่ซ้ำกัน มันจำลองชุดนามธรรมที่เป็นนามธรรมของชุดทางคณิตศาสตร์ อินเทอร์เฟซ Set มีเพียงวิธีการที่สืบทอดมาจากคอลเล็กชันและเพิ่มข้อจำกัดที่ห้ามองค์ประกอบที่ซ้ำกัน

ด้านล่างนี้เป็นการสาธิตสิ่งเดียวกัน -

สมมติว่าข้อมูลที่เราป้อนคือ

First set: [90, 75, 60, 45]
Second set: [90, 60]

ผลลัพธ์ที่ต้องการจะเป็น

After subtraction of two sets:
[75, 45]

อัลกอริทึม

Step 1 - START
Step 2 - Declare namely
Step 3 - Define the values.
Step 4 - Create two Sets, and add elements to it using the ‘add’ method.
Step 5 - Display the Sets on the console.
Step 6 - Compute the difference of the sets using the ‘removeAll’ method.
Step 7 - Display the difference of sets on the console.
Step 8 - Stop

ตัวอย่างที่ 1

ที่นี่ เรารวมการดำเนินการทั้งหมดเข้าด้วยกันภายใต้ฟังก์ชัน 'หลัก'

import java.util.HashSet;
import java.util.Set;
public class Demo {
   public static void main(String[] args) {
      System.out.println("The required packages have been imported");
      Set<Integer> input_set_1 = new HashSet<>();
      input_set_1.add(45);
      input_set_1.add(60);
      input_set_1.add(75);
      input_set_1.add(90);
      System.out.println("The first set is defined as: " + input_set_1);
      Set<Integer> input_set_2 = new HashSet<>();
      input_set_2.add(60);
      input_set_2.add(90);
      System.out.println("The second set is defined as: " + input_set_2);
      input_set_1.removeAll(input_set_2);
      System.out.println("\nAfter subtraction of two sets: \n" + input_set_1);
   }
}

ผลลัพธ์

The required packages have been imported
The first set is defined as: [90, 75, 60, 45]
The second set is defined as: [90, 60]

After subtraction of two sets:
[75, 45]

ตัวอย่างที่ 2

ในที่นี้ เราสรุปการดำเนินการเป็นฟังก์ชันที่แสดงการเขียนโปรแกรมเชิงวัตถุ

import java.util.HashSet;
import java.util.Set;
public class Demo {
   static void subtract(Set<Integer> input_set_1, Set<Integer> input_set_2){
      input_set_1.removeAll(input_set_2);
      System.out.println("\nAfter subtraction of two sets: \n" + input_set_1);
   }
   public static void main(String[] args) {
      System.out.println("The required packages have been imported");
      Set<Integer> input_set_1 = new HashSet<>();
      input_set_1.add(45);
      input_set_1.add(60);
      input_set_1.add(75);
      input_set_1.add(90);
      System.out.println("The first set is defined as: " + input_set_1);
      Set<Integer> input_set_2 = new HashSet<>();
      input_set_2.add(60);
      input_set_2.add(90);
      System.out.println("The second set is defined as: " + input_set_2);
      subtract(input_set_1, input_set_2);
   }
}

ผลลัพธ์

The required packages have been imported
The first set is defined as: [90, 75, 60, 45]
The second set is defined as: [90, 60]

After subtraction of two sets:
[75, 45]