दो ट्रैवर्सल
आइए पहले मूल सरणी और सरणी से खोजे और हटाए जाने वाले तत्व को परिभाषित करें -
int ele = 5; int arr = [1,2,3,4];
अब हम दिए गए तत्व को खोजने के लिए ऐरे में लूप करते हैं -
for (i=0; i<length; i++) if (arr[i] == ele) break;
यदि दिए गए तत्व की स्थिति पाई जाती है तो हम उन तत्वों को बाईं ओर स्थानांतरित कर देते हैं जो पाए गए तत्व के दाईं ओर होते हैं -
if (i < length) { length--; for (int j=i; j<length; j++) arr[j] = arr[j+1]; }
उदाहरण
आइए दो ट्रैवर्सल में ऐरे में एलिमेंट के विलोपन को देखने के लिए निम्नलिखित कार्यान्वयन देखें -
#include<iostream> using namespace std; int main() { int arr[] = {11, 15, 6, 8, 9, 10}; int length = sizeof(arr)/sizeof(arr[0]); int ele = 6; int i; for (i=0; i<length; i++) if (arr[i] == ele) break; if (i < length) { length--; for (int j=i; j<length; j++) arr[j] = arr[j+1]; } cout << "The array after deletion is "<<endl; for (int i=0; i<length; i++) cout << arr[i] << " "; return 0; }
आउटपुट
उपरोक्त कोड निम्न आउटपुट उत्पन्न करेगा -
The array after deletion is 11 15 8 9 10
एक ट्रैवर्सल
आइए पहले मूल सरणी और सरणी से खोजे और हटाए जाने वाले तत्व को परिभाषित करें -
int ele = 15; int arr = [11,15,6,8,9,10];
अब हम दो चर घोषित करते हैं बूलियन पाया जो निर्दिष्ट करता है कि तत्व पाया गया है या नहीं और int pos जो पाए जाने पर तत्व की स्थिति को संग्रहीत करेगा -
bool found=false; int pos=-1;
इसके बाद, हम सरणी खोजते हैं और यदि कोई तत्व पाया जाता है तो हम उसकी स्थिति और शिफ्ट तत्वों को संग्रहीत करते हैं, जबकि हमारा लूप एक ही बार में चल रहा होता है।
for (int i=0; i<length; i++){ if(pos!=-1){ arr[pos]=arr[pos+1]; j++; } else if(arr[i]==ele){ pos=i; found=true; } }
उदाहरण
आइए केवल एक ट्रैवर्सल में सरणी में तत्व के विलोपन को देखने के लिए निम्नलिखित कार्यान्वयन देखें -
#include<iostream> using namespace std; int main() { int arr[] = {11, 15, 6, 8, 9, 10}; int length = sizeof(arr)/sizeof(arr[0]); int ele = 6 ; bool found=false; int pos=-1; for (int i=0; i<length; i++){ if(pos!=-1){ arr[pos]=arr[pos+1]; pos++; } else if(arr[i]==ele){ pos=i; found=true; } } cout << "The array after deletion is "<<endl; if(found){ length--; } for (int i=0; i<length; i++) cout << arr[i] << " "; return 0; }
आउटपुट
उपरोक्त कोड निम्न आउटपुट उत्पन्न करेगा -
The array after deletion is 11 15 8 9 10