Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C#

क्रमबद्ध सरणी से डुप्लिकेट कैसे निकालें और सी # का उपयोग करके गैर-डुप्लिकेट सरणी वापस कैसे करें?

सरणी पहले से ही क्रमबद्ध है, हम दो पॉइंटर्स ii और jj रख सकते हैं, जहां ii धीमा-धावक है जबकि jj तेज-धावक है। जब तक nums[i] =nums[j]nums[i]=nums[j], हम डुप्लिकेट को छोड़ने के लिए jj बढ़ाते हैं।

जब हमारा सामना nums[j] !=nums[i] से होता है, तो डुप्लिकेट रन समाप्त हो जाता है, इसलिए हमें इसके मान को nums[i + 1]nums[i+1] पर कॉपी करना होगा। ii को तब बढ़ाया जाता है और हम उसी प्रक्रिया को फिर से दोहराते हैं जब तक कि jj सरणी के अंत तक नहीं पहुंच जाता। एक नई सरणी बनाएं, फ़िल्टर किए गए सरणी से सभी तत्वों को अनुक्रमणिका तक कॉपी करें और नया सरणी लौटाएं।

समय जटिलता - O(N)

उदाहरण

using System;
namespace ConsoleApplication{
   public class Arrays{
      public int[] RemoveDuplicatesFromSortedArrayAndReturnArray(int[] arr){
         int index = 1;
         for (int i = 0; i < arr.Length - 1; i++){
            if (arr[i] != arr[i + 1]){
               arr[index] = arr[i + 1];
               index++;
            }
            else{
               continue;
            }
         }
         int[] newarr = new int[index];
         for (int i = 0; i < index; i++){
            newarr[i] = arr[i];
         }
         return newarr;
      }
   }
   class Program{
      static void Main(string[] args){
         Arrays a = new Arrays();
         int[] arr = { 0, 0, 1, 1, 1, 2, 2, 3, 3, 4 };
         int[] res = a.RemoveDuplicatesFromSortedArrayAndReturnArray(arr);
         for (int i = 0; i < res.Length; i++){
            Console.WriteLine(res[i]);
         }
         Console.ReadLine();
      }
   }
}

आउटपुट

0 1 2 3 4

  1. Windows 10 टास्कबार से समाचार और मौसम कैसे निकालें

    विंडोज 10 में समाचार और रुचि विजेट (उर्फ द न्यूज एंड वेदर विजेट) आपको टास्कबार पर एक त्वरित नज़र के साथ वर्तमान मौसम की जांच करने की अनुमति देता है। जब भी आप विजेट आइकन पर कर्सर ले जाते हैं तो यह अतिरिक्त मौसम संबंधी जानकारी और सिलवाया समाचार अपडेट भी प्रकट करता है। लेकिन समाचार और रुचि विजेट एक अच्

  1. एंड्रॉइड में एक क्रमबद्ध लिंक्ड सूची से डुप्लिकेट कैसे निकालें?

    यह उदाहरण एंड्रॉइड में एक क्रमबद्ध लिंक की गई सूची से डुप्लिकेट को निकालने के तरीके के बारे में प्रदर्शित करता है। चरण 1 - एंड्रॉइड स्टूडियो में एक नया प्रोजेक्ट बनाएं, फाइल ⇒ न्यू प्रोजेक्ट पर जाएं और एक नया प्रोजेक्ट बनाने के लिए सभी आवश्यक विवरण भरें। चरण 2 - निम्न कोड को res/layout/activity_ma

  1. बैकअप से डुप्लिकेट का पता लगाने और निकालने का तरीका

    अगर आपके कंप्यूटर या फोन में स्टोरेज कम है, तो आप अपनी कम बार इस्तेमाल की जाने वाली फाइलों को दूसरी ड्राइव पर ट्रांसफर करते हैं। कंप्यूटर के लिए, हम बाहरी हार्ड डिस्क ड्राइव और USB फ्लैश ड्राइव का उपयोग करते हैं। क्लाउड स्टोरेज के साथ इन दिनों डेटा का बैकअप लेने का सबसे आम तरीका है। लेकिन, क्या आपको