Computer >> Máy Tính >  >> Lập trình >> C#

Chương trình C # để tìm các phần tử chung trong ba mảng đã sắp xếp


Đầu tiên, khởi tạo ba mảng đã sắp xếp -

int []one = {20, 35, 57, 70};
int []two = {9, 35, 57, 70, 92};
int []three = {25, 35, 55, 57, 67, 70};

Để tìm các phần tử phổ biến trong mảng ba sắp xếp, hãy lặp lại các mảng bằng vòng lặp while và kiểm tra mảng đầu tiên với mảng thứ hai và mảng thứ hai với mảng thứ ba -

while (i < one.Length &amp;&amp; j < two.Length &amp;&amp; k < three.Length) {
   if (one[i] == two[j] &amp;&amp; two[j] == three[k]) {
      Console.Write(one[i] + " ");
      i++;j++;k++;
   }
   else if (one[i] < two[j])
      i++;
   else if (two[j] < three[k])
      j++;
   else
      k++;
}

Ví dụ

Bạn có thể thử chạy đoạn mã sau để tìm các phần tử chung trong ba mảng đã sắp xếp.

using System;
class Demo {
   static void commonElements(int []one, int []two, int []three) {
      int i = 0, j = 0, k = 0;
      while (i < one.Length &amp;&amp; j < two.Length &amp;&amp; k < three.Length) {
         if (one[i] == two[j] &amp;&amp; two[j] == three[k]) {
            Console.Write(one[i] + " ");
            i++;j++;k++;
         }
         else if (one[i] < two[j])
            i++;
         else if (two[j] < three[k])
            j++;
         else
            k++;
      }
   }
   public static void Main() {
      int []one = {20, 35, 57, 70};
      int []two = {9, 35, 57, 70, 92};
      int []three = {25, 35, 55, 57, 67, 70};

      Console.Write("Common elements: ");

      commonElements(one, two, three);
   }
}

Đầu ra

Common elements: 35 57 70