Searching in Data Structure (searching क्या है जाने हिंदी में…. )

Hello दोस्तों! आज मैं आपको इस पोस्ट में Searching in Data Structure in Hindi (searching क्या है ) के बारें में बताऊंगा, और इसके example को भी पढेंगे,

तो चलिए शुरू करते हैं:

Searching in Data Structure……


What is Searching in data structure Hindi

Searching का अर्थ है ढूँढना. searching द्वारा किसी भी list मे सुरक्षित किसी भी element को ढूंढा जा सकता है

searching किसी भी list अर्थात कुछ element का समूह है जो link के द्वारा जुड़े रहते है मे से किसी element की location को ढूँढने के लिए की जाती है| searching का successful या unsuccessful होना पूर्णतः element के मिलने या न मिलने पर निर्भर करता है अर्थात यदि element list मे मिल जाता है

तो searching successful कहलाती है

और यदि element list मे नहीं मिलता है तो searching unsuccessful कहलाती है ।

searching की algorithm list मे stored element के data structure के type पर निर्भर करती है ।

अतः यदि एक array मे searching करते है तो उसकी algorithm अलग होगी और यदि एक list मे searching करते है ।

तो उसकी algorithm अलग होगी और यदि एक list मे searching करते है तो उसकी algorithm अलग होगी ।


Fast searching के लिए दो searching methods को use मे लिया जाता है ।

(1) Linear या Sequential Search

 (2) Binary Search


(1) Linear या Sequential Search: –

यह सबसे easiest searching method है sequential search की तुलना single key के उपर की जाती है ।

linear search मे हम क्रम से एक एक करके array के हर element तक पहुँचते है और देखते है की वह element दिया गया element है

या नहीं यदि element मिल जाता है तो वह successful search कहलाएगी और यदि element नहीं मिलता है तो वह unsuccessful search कहलएगी  ।

यह एक ऐसी तकनीक है जो दिये गए item को locate करने के लिए sequentially array को traverse करता है ।


Efficiency of Sequential Search: –

इसमे दिया गया समय (time) अथवा comparison के No. Searching मे record बनाते है

जो technique की capacity पर आधारित होता है यदि दिया गया element first position पर है

तो केवल एक search table का comparison बनेगा । यदि दिया गया element last मे है

तो N comparison होंगे और यदि element array के बीच मे कही पर है तो (N+2)/2 comparison होगे  ।

 

इसके लिए निम्न algorithm है

                                Algorithm:-

यह Algorithm a मे item के Loc, location को प्राप्त करता है , या sets loc=0 यदि search असफल है ।

  1. [insert item at the end of data] set data [n+1] = item
  2. [initialize counter] set loc = 1.
  3. [search for item]

Repeat white data [loc] = item;

set loc = loc+1.

  1. [successful] if loc = n+1, then set loc = 0
  2. Exit.


(2) Binary search :-

यह data structure sorted array और link list दोनों का combination है । इस search के कुछ important point निम्न है ।

1 binary search recursive है यह निर्धारित करता है की search key array के नीचे या उपर वाले आधे भाग पर स्थित है या नहीं

2  यहां एक termination condition है ।

यदि low>high तब partition यह search करता है की कोई element इसमे नहीं है

यदि यहां पर current partition के मध्य मे element के साथ एक match है तो easily element से वापस जा सकते है ।

3 array को तब तक search करना जब तक की सही point द्वारा insert करवाया गया , नया item प्राप्त न हो जाए

4 सभी items को एक स्थान पर move करना ।

5 नये item को खाली स्थान मे insert करना ।

6 binary search को static घोषित किया जाता है यह एक local function है । जो सभी programs के द्वारा access किया जा सकता है

7 दिये गए element को array को array मे search करने के लिए निम्न steps को follow करेंगे ।

Beg array के first element को  point करेगा ।

End array के last element को point करेगा ।

अब beginning और end वाले index से middle value को find out किया जाएगा ।

अब check करेंगे की जिस item को search करना है वह middle value से बढ़ा है या छोटा ।

यदि दिया गया item middle value से छोटा है तो उसे middle से पहले वाले array मे search करेंगे ।

यदि दिया गया item middle value से बड़ा है तो उसे middle से बाद वाले array मे search करेंगे ।

इस प्रकार हर बार beginning और end को set किया जाएगा और specific element को find out करेंगे  ।

Example:-

एक sorted array दिया गया है जिसमे से 15 element को search करना है ।

Array = 3,10,15,20,35,40,60

Solution:-

1  अतः mid a[3]element को point करेगा । अब यह check करेंगे की a[3] पर जो element है वह 15 से छोटा है या बड़ा ।

यदि a[3] पर जो element है वह 15 से छोटा है तो 15 के right वाले array मे search करेंगे ।

यदि a[3] पर जो element है वह 15 से बड़ा है तो 15 के left वाले array मे search करेंगे ।

2 a[3] पर 20 है जो 15 से बड़ा है अतः 15 को उसके left मे search किया जाएगा इसके लिए end मे mid-1 को assign करेंगे  ।

और पुनः beginning और end के middle value को find करेंगे ।

3 a[1] पर 10 है जो 15 से छोटा है अतः 15 को उसके right मे search किया जाएगा इसके लिए beg मे mid+1 को assign करेंगे । और पुनः beginning और end के middle value को find out करेंगे ।

4 beginning और end दोनों a[2] को point करेंगे अतः अब check करेंगे की 15 a[2] पर तो नहीं है

array देखने से पता चलता है की a[2] position पर 15 है । इस प्रकार binary searches perform किया जाएगा ।


Algorithm for Binary Search

Begin

set beg = 0      set end = n – 1

set mid = (beg+end)/2

while ( (beg < end) and (a[mid] # item ) ) do

if (item < a [mid]) then

set end = mid-1

else

set beg = mid + 1

endif

set mid = (beg + end) / 2

endwhile

if ( beg > end) then

set loc = -1

else

set loc = mid

endif

End.


निवेदन:- अगर आपके लिए यह आर्टिकल useful रहा हो तो इसे अपने दोस्तों और classmates के साथ अवश्य share कीजिये, और  या अन्य विषयों से related कोई question हो तो नीचे कमेंट के द्वारा बताइए. thanks


इसे भी देखे:

Hello दोस्तों! नीचे दिए गए links पर click  करके आपको हम  इस पोस्ट में  (Computer Online Test) की Practice कराएंगे जिससे आप अपने  CCC, O level , कम्प्युटर GK की practice कर सकते है.

इस post के द्वारा आप  अपनी कम्प्युटर की  नॉलेज बड़ सकते है.

उसके साथ ही साथ आप अपने कई प्रकार के पेपरो की भी तैयरी  भी कर सकते है.

जैसे की CCC, O level , कम्प्युटर GK की practice कर सकते है,

Leave a Comment