data structure interview viva questions in hindi

Data structure के 55 इंटरव्यू प्रश्न और उत्तर | 55 Data structure interview, viva questions in hindi

पोस्ट को share करें-

Data structure के प्रश्न और उत्तर, Data structure interview questions and answers in hindi, [Data structure mcq, viva questions], BCA के notes, computer notes, Data structure notes, कंप्यूटर notes, Data structure question pdf, Data structure के mcq, Data structure के नए प्रश्न, Data structure for fresher, Data structure for experienced, btech computer notes in hindi.

क्या आप भी एक Data structure expert बनना चाहते है, और इसके लिए इंटरव्यू की तैयारियों में लगे हुए है? या फिर आप एक student है, जो अपने Data structure के concept को काफी मजबूत करना चाहते है, और इसमें और अच्छा बनना चाहते है?

इन दोनों में से आप भी कोई भी क्यों ना हो,आज आप बिल्कल सही जगह पे आए है, जहाँ हम Data structure से समन्धित कुछ ऐसे topics के बारे में जानने वाले है, जो अमूमन interview या किसी viva में पूछे जाते आए है।

यहां, हर एक interview के साथ ही बड़ी कंपनियों में भी पूछे जाने वाले वास्तविक प्रश्न मिलेंगे, जो आपकी तैयारियों को और भी ज्यादा मजबूत करेंगे। और साथ ही यहाँ हर एक प्रश्न के साथ उसके उत्तर भी दिए गए है, ताकि तैयारी के समय की बचत हो सके।

यह आर्टिकल आपको अपने Data structure के कौशल को और ज्यादा साफ़ करने और अपना आत्मविश्वास वापस पाने और किसी नौकरी के लिए तैयार होने में काफी मदद करेगी। साथ ही यह उन छात्रों की भी काफी ज्यादा मदद करेगी जो, इस विषय में अपने ज्ञान को और बढ़ाना चाहते है। 

तो आइये अब हम जानते है,ऐसे ही प्रश्नों के बारे में जो experts और teacher द्वारा इस विषय में काफी ज्यादा पूछे जाते है –

Table of Contents

Data structure क्या होता है? (What is Data structure in hindi)

Data structure एक ऐसा तरीका होता है, जो यह specify करता है कि डेटा को कैसे organize और manipulate किया जाए। साथ ही यह उनके बीच संबंधों को भी परिभाषित करता है। Data structure के कुछ उदाहरण है – arrays, Queue, Linked List, Stack, आदि। Data structure कई कंप्यूटर साइंस algorithms का एक केंद्रीय हिस्सा हैं, क्योंकि वे किसी  प्रोग्रामर को डेटा को कुशल और अच्छे तरीके से संभालने में सक्षम बनाते हैं।

Data Structure का उपयोग कहा किया जाता है?

Data Structure का उपयोग कंप्यूटर साइंस के इन निम्नलिखित क्षेत्रों में को बड़े पैमाने पर किया जाता है, जैसे की –

Artificial IntelligenceOperating System
Compiler DesignGraphics
SimulationDatabase Management System
Numerical AnalysisStatistical analysis package

Data Structures कितने प्रकार के होते है?

यह मुख्य रूप से दो प्रकार के होते है, जो की है –

Linear Data Structure 

किसी एक data structure को Linear तब होता है, यदि इसके सभी elements को sequential order में व्यवस्थित किया जाता है। साथ ही इसमें, elements को non-hierarchical तरीके से स्टोर किया जाता है, जहां पहले और अंतिम element को छोड़कर, सभी item का एक successors और एक predecessors मौजूद होता है।

Non-Linear Data Structure 

इस प्रकार का data Structure एक sequence नहीं बनाती है, अर्थात इसमें प्रत्येक item या element एक non-linear व्यवस्था में दो या दो से अधिक अन्य items से जुड़ा हुआ होता है। साथ ही इसमें डेटा elements को sequential structure में व्यवस्थित नहीं किया जाता है।

Stack किसे कहते है?

स्टैक एक ordered list होता है, जिसमें डेटा का insertion और deletion केवल एक छोर पर ही किया जा सकता है, जिसे की top कहा जाता है। यह एक recursive डेटा structure होती है, जिसमें इसके top element के लिए एक pointer मौजूद होता है। स्टैक को कभी-कभी लास्ट-इन-फर्स्ट-आउट (LIFO) list भी कहा जाता है, यानी की स्टैक में पहले डाला गया element स्टैक से अंत से delete किया जाएगा।

Recursion करने के लिए किस data structure का उपयोग किया जाता है?

Stack data structure की “लास्ट इन फर्स्ट आउट” (LIFO) nature के कारण इसका इस्तेमाल recursion में किया जाता है। साथ ही प्रत्येक function कॉल पर iteration variables को save के लिए ऑपरेटिंग सिस्टम stack को बनाए रखता है।

Stack data structure का इस्तेमाल किन छेत्रो में किया जाता है?

इसका उपयोग कई तरह के छेत्रो के एप्लीकेशन के लिए किया जाता है, जैसे की –

  • Memory Management
  • Expression evaluation
  • Function calling and return
  • Backtracking

Stack पर कौन से operations किए जा सकते हैं?

इसमें तीन तरह के ऑपरेशन किये जा सकते है –

  • Push Operations
  • Pop Operations
  • Peek Operations

PUSH और POP में क्या अंतर होता है?

PUSH और POP ऑपरेशन यह specify करते है की, किसी stack में डेटा को किस तरीके के store और retrieve किया जायेगा।

  • PUSH – यह निर्दिष्ट करता है कि डेटा को stack में “insert” किया जा रहा है।
  • POP – यह निर्दिष्ट करता है की डेटा को stack से “delete” किया जा रहा है।

PUSH द्वारा डेटा को कैसे insert किया जाता है?

Step 1 : पहले इसमें variable टॉप को बढ़ाएं ताकि यह अगले मेमोरी allocation को refer कर सके।

Step 2 : फिर item को top के बराबर array index value पर कॉपी करें।

Step 3 : Step 1 और 2 को तब तक दोहराएं जब तक कि stack overflows ना हो जाए।

POP द्वारा डेटा को कैसे delete किया जाता है?

Step 1 : सबसे ऊपरी element को दूसरे एक variableमें स्टोर करें।

Step 2 : फिर top की value को घटाएं।

Step 3 : फिर सबसे ऊपरी element पर return आए।

Postfix expression क्या होता है?

एक expression जिसमें operands का पालन करने वाले operators को Postfix expression के रूप में जाना जाता है। इसका मुख्य benefit यह है की, इसमें parentheses में sub-expressions को group नही करना पड़ता है। 

Expression “a + b” को Postfix notation में “ab+” के रूप में दर्शाया जाएगा।

Array किसे कहा जाता है?

यह एक ही प्रकार के डेटा items का एक collection होता है, जिसे की contiguous मेमोरी locations में स्टोर किया जाता है। यह सबसे सरल डेटा structure होता है, जिसमें प्रत्येक डेटा element को उसके index नंबर का उपयोग करके randomly कही से भी access किया जा सकता है। Array का index [0] से शुरू होता है, और फिर यह एक-एक value आगे बढ़ता रहता है। 

One-dimension array में सारे elements को किस तरह से reference किया जा सकता है?

ऐसा एक indexed loop का उपयोग करके किया जा सकता है, जैसे कि इसमें काउंटर 0 से लेकर array size minus one तक चलता है। और इस तरह, आप loop काउंटर को array subscript के रूप में उपयोग करके sequence में सभी elements को reference कर सकते हैं।

Multidimensional array क्या होता है?

  • एक multidimensional array को array के arrays के रूप में परिभाषित किया जा सकता है, जिसमें डेटा को rows और columns से युक्त एक tabular रूप में स्टोर किया जाता है। 
  • 2D arrays एक रिलेशनल डेटाबेस होता है, जिसे की एक जैसे दिखते वाले डेटा structure को लागू करने के लिए बनाया गया हैं। 
  • यह बड़ी मात्रा में डेटा को एक साथ रखने में आसानी प्रदान करता है, जिसे की आवश्यकता पड़ने पर किसी भी संख्या में किसी function में pass किया जा सकता है।

2D array के elements को memory में कैसे स्टोर किया जाता है?

ऐसी दो तकनीकें हैं, जिनका उपयोग करके, 2D array के elements को मेमोरी में स्टोर किया जा सकता है –

Row-Major Order 

Row-major ordering में, 2D array की सभी rows को मेमोरी में contiguous रूप से स्टोर किया जाता है। इसमें सबसे पहले, array की पहली row को पूरी तरह से मेमोरी में स्टोर किया जाता है, फिर array की दूसरी row को पूरी तरह से मेमोरी में स्टोर किया जाता है, और यह प्रक्रिया इसी तरह से अंतिम row तक चलती रहती है।

Column-Major Order 

Column-major ordering में, 2D array के सभी columns मेमोरी में लगातार contiguous रूप से स्टोर किए जाते हैं। इसमें सबसे पहले, array का पहला column पूरी तरह से मेमोरी में स्टोर हो जाता है, फिर array की दूसरी column को पूरी तरह से मेमोरी में स्टोर हो जाती है, और यह प्रक्रिया इसी तरह से अंतिम column तक चलती रहती है।

दिए गए base address BA के लिए 2D array में मौजूद  random element का address calculate करे?

Row-Major Order – यदि array को एक [m] [n] के रूप में घोषित किया गया है, जहां की “m” rows की संख्या है, जबकि “n” column की संख्या है, तो एक element का पता [i] [j] में संग्रहीत सरणी का पता पंक्ति-प्रमुख क्रम की गणना इस प्रकार की जाती है, तो एक row-major order array में स्टोर element a[i][j] का address पता लगाने का तरीका है –

Address(a[i][j]) = B. A. + (i * n + j) * size

Column-Major Order – यदि array को एक [m] [n] के रूप में घोषित किया गया है, जहां “m” rows की संख्या है, जबकि “n” column की संख्या है,  तो एक element का पता [i] [j] में संग्रहीत सरणी का पता पंक्ति-प्रमुख क्रम की गणना इस प्रकार की जाती है, तो एक column -major order array में स्टोर element a[i][j] का address पता लगाने का तरीका है –

Address(a[i][j]) = ((j*m)+i)*Size + BA

Linked List Data structure क्या होता है?

Linked लिस्ट randomly स्टोर किये गए डेटा objects का collection होता है, जिन्हें “nodes” कहा जाता है। इसमें, प्रत्येक node एक pointer के माध्यम से अपने adjacent नोड से जुड़ा हुआ होता है। इसके एक नोड में दो फ़ील्ड मौजूद होते हैं, जो की है एक डेटा फ़ील्ड जो की डेटा को स्टोर करता है, और दूसरा लिंक फ़ील्ड, जो की अगले node ने address को स्टोर करता है।

linked list data structure क्या होता है
Fig – Linked list

किसी linked lists को linear या फिर non-linear data structures माना जाता है?

  • एक linked lists को अपने स्थिति के आधार पर linear और non-linear डेटा structure दोनों ही माना जाता है।
  • डेटा storage के आधार पर इसे non-linear डेटा structures माना जाता है।
  • वही, access strategy के आधार पर, इसे एक linear डेटा structures के रूप में माना जाता है।

Array के जगह Linked List को इस्तेमाल करने के क्या फायदे होते है?

  • एक linked list का size रनटाइम के दौरान बढ़ाया जा सकता है, जो की एक array के मामले में असंभव है।
  • Linked list में डेटा को main मेमोरी में लगातार मौजूद रहने की आवश्यकता नहीं होती है, और यदि मेमोरी में contiguous स्थान उपलब्ध नहीं होते है, तो nodes को लिंक के माध्यम से जुड़ी मेमोरी में कहीं भी स्टोर किया जा सकता है।
  • Linked list को main मेमोरी में dynamically स्टोर किया जाता है, और यह किसी प्रोग्राम की मांग के अनुसार grows होता रहता है, जबकि array मुख्य मेमोरी में statically स्टोर होती है, जिसका की आकार compile के समय पर ही declare किया जाना चाहिए।
  • Linked list में elements की संख्या उपलब्ध memory space तक ही सीमित होती है, जबकि array में elements की संख्या array के size तक ही सीमित होती है।

Singly linked list में नोड बनाने के लिए C में कोड लिखें?

C language में एक single लिंक लिस्ट नोड बनाने के लिए हम निचे दिए गए कोड का इस्तेमाल कर सकते है –

struct node   
{  
    int data;   
    struct node *next;  
};  
struct node *head, *ptr;   
ptr = (struct node *)malloc(sizeof(struct node));

C language का इस्तेमाल करके एक heterogeneous linked list बनाने के लिए किस तरह के pointer का इस्तेमाल किया जाना चाहिए?

एक heterogeneous linked list में विभिन्न तरह डेटा प्रकार मौजूद होते हैं, और इसलिए इसमें सामान्य pointers का उपयोग करना संभव नहीं होता है। इसीलिए इस काम के लिए, हमे एक generic pointer प्रकार जैसे की void pointer का उपयोग करना होगा क्योंकि void pointer किसी भी प्रकार के pointer को स्टोर करने में सक्षम होता है।

Doubly linked list क्या होता है?

यह एक काफी जटिल प्रकार की linked list होती है, जिसमें एक नोड में अपने पिछले के साथ-साथ sequence में अगले नोड के लिए भी एक pointer मौजूद होता है। एक doubly linked list में, एक नोड में तीन भाग होते हैं –

  • नोड का डेटा
  • Sequence में मौजूद अगले नोड के लिए address pointer (अगला सूचक)
  • पिछले नोड (पिछले pointer) के लिए एक pointer 

Circular singly list के शुरुआत में नोड insert करने के लिए C में कोड लिखे?

किसी circular singly list के शुरुआत में एक नोड डालने के लिए हम निचे दिए गए C language के कोड का इस्तेमाल कर सकते है-

#include<stdio.h>  
#include<stdlib.h>  
void beg_insert(int);  
struct node  
{  
    int data;  
    struct node *next;  
};  
struct node *head;  
void main ()  
{  
    int choice,item;  
    do   
    {  
        printf("\nEnter the item which you want to insert?\n");  
        scanf("%d",&item);  
        beg_insert(item);  
        printf("\nPress 0 to insert more ?\n");  
        scanf("%d",&choice);  
    }while(choice == 0);  
}  
void beg_insert(int item)    
{    
        
    struct node *ptr = (struct node *)malloc(sizeof(struct node));    
    struct node *temp;  
    if(ptr == NULL)    
    {    
        printf("\nOVERFLOW");    
    }    
    else     
    {    
        ptr -> data = item;    
        if(head == NULL)    
        {    
            head = ptr;    
            ptr -> next = head;    
        }    
        else     
        {       
            temp = head;    
            while(temp->next != head)    
                temp = temp->next;    
            ptr->next = head;     
            temp -> next = ptr;     
            head = ptr;    
        }     
    printf("\nNode Inserted\n");  
    }                  
} 

Queue data structure क्या होता है?

एक queue को एक ordered list के रूप में परिभाषित किया जा सकता है, जो की एक छोर पर insert operations को सक्षम बनाता है, जिसे “REAR” कहा जाता है, और दूसरे छोर delete operations को सक्षम बनाता है, जिसे की “FRONT” कहा जाता है।

Queue data structure के कुछ इस्तेमाल बताए?

Queue के कुछ इस्तेमाल है –

  • प्रिंटर, डिस्क, सीपीयू, आदि जैसे single shared resource के लिए queue का व्यापक रूप से एक waiting lists के रूप में उपयोग किया जाता है।
  • Queue का उपयोग डेटा के asynchronous ट्रांसफर में भी किया जाता है, (जहां डेटा को दो processes के बीच समान rate पर transferred नहीं किया जा रहा है) जैसे की –  पाइप, फ़ाइल आईओ (IO), सॉकेट, आदि।
  • Mp3 मीडिया प्लेयर, CD प्लेयर, आदि जैसे अधिकांश applications में queue का उपयोग buffer के रूप में किया जाता है।
  • साथ ही playlist से गाने जोड़ने और हटाने के लिए मीडिया प्लेयर में एक playlist को बनाए रखने के लिए भी queue का उपयोग किया जाता है।
  • ऑपरेटिंग सिस्टम  में किसी तरह के Interrupts को संभालने के लिए भी queue का ही उपयोग किया जाता है।  आदि। 

Queue के array implementation के नुकसान क्या है?

इसे इस्तेमाल करने में दो तरह के नुकसान होते है, जो की है –

Memory Wastage -Array का स्थान, जो की queue के elements को स्टोर करने के लिए उपयोग किया जाता है, उसे दोबारा queue के elements को स्टोर करने के लिए कभी भी पुन: उपयोग नहीं किया जा सकता है, क्योंकि elements को केवल front end पर ही डाला जा सकता है, और front का value इतना अधिक हो सकता है कि, उससे पहले की सारी जगह, कभी भी भरी नही जा सकती।

Array Size – यहाँ ऐसी स्थितियां हो सकती हैं जिनमें, हमें queue को लागू करने के लिए array का उपयोग करने पर अधिक elements को insert करने के लिए queue के size को विस्तार करने की आवश्यकता हो सकती है, और एक array के आकार का विस्तार करना लगभग असंभव होगा। इसलिए किसी भी array का सही size तय करना हमेशा एक समस्या होती है।

Circular queue में element को insert करने के scenarios क्या-क्या हो सकते है?

  • अगर (rear + 1)%maxsize = front, है तो इसका मतलब queue पूरी तरह से भरा हुआ है। उस स्थिति में, overflow होता है, और इसलिए, queue में insertion नहीं किया जा सकता है। 
  • अगर rear != max – 1, है तो इसमें पिछला mod(अधिकतम आकार) में बढ़ाया जाएगा, और queue के rear end में नया value डाला जाएगा।
  • अगर front != 0 और rear = max – 1, है तो इसका मतलब यह है कि queue पूरी तरह से भरा हुआ नही है, और इसलिए rare value को 0 पर सेट करके वहां नया element डाल सकते है।

Deque क्या होता है?

Deque को जिसे की “double-ended queue” के नाम से भी जाना जाता है, elements के एक ordered set के रूप में परिभाषित किया जा सकता है, जिसमें insertion और deletion दोनों सिरों पर किया जा सकता है, अर्थात आगे और पीछे दोनों तरफ से ही।

Tree data structure किसे कहा जाता है?

Tree एक तरह का recursive data structure है, जिसमें एक या एक से अधिक डेटा nodes का सेट मौजूद होता है, जहां एक node को tree की root के रूप में नामित किया जाता है, जबकि बाकि nodes को रूट का child कहा जाता है। रूट नोड के अलावा अन्य nodes को nonempty सेट में विभाजित किया जाता है, जहां की उनमें से प्रत्येक को sub-tree कहा जाना है।

Tree data structure कितने प्रकार के होते है?

यह छह प्रकार के होते है –

  1. General Tree
  2. Binary Tree
  3. Forests
  4. Binary Search Tree
  5. Expression Tree
  6. Tournament Tree

Binary trees क्या होता है?

यह एक विशेष प्रकार का generic tree होता है, जिसमें प्रत्येक node में maximum दो child नोड मौजूद हो सकते हैं। एक binary tree को आम तौर पर तीन अलग-अलग subsets – (नोड का root, left sub-tree और Right binary sub-tree) में भाजित किया जाता है।

Binary tree पर in-order traversal करने के लिए C में कोड लिखे?

इसमें in-order traversal करने के लिए हम निचे दिए गए C language के कोड का इस्तेमाल कर सकते है –

void in-order(struct treenode *tree)  
    {  
        if(tree != NULL)  
        {  
            in-order(tree→ left);  
            printf("%d",tree→ root);  
            in-order(tree→ right);  
        }  
    }

Height “k” के एक binary tree में नोड की अधिकतम संख्या क्या होगी?

इसमें नोड की अधिकतम संख्या होगी –  2k+1-1, where k >= 1

Binary tree में मौजूद nodes की संख्या को जानने के लिए recursive C फंक्शन लिखे?

इसे जानने के लिए, हम निचे दिए गए कोड का इस्तेमाल; कर सकते है –

int count (struct node* t)  
{  
    if(t)  
    {  
        int l, r;  
        l = count(t->left);  
        r=count(t->right);  
        return (1+l+r);  
    }  
    else   
    {  
        return 0;  
    }  
}

Binary tree की height को जानने के लिए recursive C फंक्शन लिखे?

किसी एक binary tree की height को जानने के लिए, हम निचे दिए गए कोड का इस्तेमाल; कर सकते है –

int countHeight(struct node* t)  
{  
    int l,r;  
    if(!t)  
        return 0;  
    if((!(t->left)) && (!(t->right)))  
        return 0;  
    l=countHeight(t->left);  
    r=countHeight(t->right);  
    return (1+((l>r)?l:r));  
}

Binary search tree के मुकाबले AVL tree ज्यादा उपयोगी कैसे होता है?

  • AVL tree बाइनरी सर्च ट्री को तिरछा ना होने देकर उसकी ऊंचाई को नियंत्रित करता है।
  • ऊंचाई “h” के binary सर्च ट्री में सभी operations के लिए लिया गया समय O(h) होता है। हालाँकि, इसे O(n) तक बढ़ाया जा सकता है, यदि binary सर्च ट्री अपने सबसे खराब स्थिति में काफी तिरछा हो जाये।
  • इस ऊंचाई को “n” log तक सीमित करके, AVL tree प्रत्येक ऑपरेशन पर O(log n) होने के लिए upper bound लगाता है, जहां की “n” nodes की संख्या को दर्शाती है।

Binary tree की properties क्या-क्या है?

Order “m” के binary ट्री में “m” उस ट्री के सभी गुण होते हैं, और इसके अलावा भी इसमें कई गुण मौजूद होते हैं, जैसे की –

  • B-tree के प्रत्येक नोड में अधिकतम “m” childs मौजूद होते हैं।
  • Root नोड और Leaf नोड को छोड़कर B-tree में प्रत्येक नोड में कम से कम “m/2” child मौजूद होते हैं।
  • रूट nodes में कम से कम 2 नोड होने चाहिए।
  • सभी leaf नोड  समान स्तर पर होने चाहिए।    

B tree और B+ tree में क्या अंतर होता है?

B tree B+ tree
इसमें search keys को बार-बार स्टोर नहीं किया जा सकता है।इसमें redundant search keys मौजूद हो सकती हैं।
यहाँ डेटा को leaf नोड के साथ-साथ internal नोड्स में भी स्टोर किया जा सकता है।यहाँ डेटा को केवल leaf नोड पर ही स्टोर किया जा सकता है।
इसमें internal नोड को delete करना काफी जटिल और समय लेने वाली प्रक्रिया होती है।इसमें internal नोड को delete करना जटिल नहीं होता, क्योंकि इसमें elements को हमेशा leaf नोड से delete कर दिया जाएगा।
यहाँ किसी डेटा को सर्च  करना एक धीमी प्रक्रिया है, क्योंकि डेटा internal नोड के साथ-साथ leaf नोड पर भी पाया जा सकता है।यहाँ डेटा को सर्च करना काफी तेज़ है, क्योंकि इसमें डेटा केवल leaf नोड पर ही पाया जा सकता है।
Leaf nodes को एक साथ नहीं जोड़ा जा सकता है।Search कार्यों को अधिक कुशल बनाने के लिए, इसमें लीफ nodes को एक साथ जोड़ा जाता है।

Tree-data structure के कुछ applications क्या है?

  • इसका इस्तेमाल syntax analysis के लिए किया जाता है। 
  • साथ ही इसे arithmetic expression के manipulation के लिए भी काम में लाया जाता है। 
  • इसे symbol table construction के लिए भी उपयोग किया जाता है।
  • इसे hierarchical data model में भी इस्तेमाल किया जाता है।      आदि।

Graph data structure क्या होता है?

एक ग्राफ “G” को एक ordered set G (V, E) के रूप में परिभाषित किया जा सकता है, जहां V(G) vertices के सेट का प्रतिनिधित्व करता है, और E(G) edges के सेट का प्रतिनिधित्व करता है, जो की इन vertices को जोड़ने के लिए उपयोग किया जाता है। एक ग्राफ को एक cyclic tree के रूप में देखा जा सकता है, जहां vertices (nodes) parent-child के संबंध रखने के बजाय, उनके बीच कोई जटिल संबंध बनाए रखते हैं।

Cycle, path, और circuit में क्या अंतर है?

Path – एक Path बिना किसी प्रतिबंध के edges से जुड़े adjacent vertices का sequence यानि की अनुक्रम होता है।

Cycle – एक cycle को एक बंद path के रूप में परिभाषित किया जा सकता है, जहां की initial vertex अंतिम vertex के समान होता है। साथ ही इसके किसी भी vertex को दो बार visit नही किया जा सकता है।

Circuit – एक circuit को भी एक बंद path के रूप में परिभाषित किया जा सकता है, जहां initial vertex अंतिम vertex के समान होता है। मगर इसमें किसी भी vertex को दोहराया जा सकता है।

Graph implementation के लिए कौन से data structure का इस्तेमाल किया जाता है?

इसके लिए, निचे दिया data structures का उपयोग किया जाता है –

  • Sequential representation में, Adjacency मैट्रिक्स का उपयोग किया जाता है।
  • वही linked representation में, एक adjacency list का उपयोग किया जाता है।

Graph data structure के applications क्या-क्या है?

ग्राफ में निम्नलिखित एप्लीकेशन होते हैं –

  • ग्राफ़ का उपयोग circuit नेटवर्क में किया जाता है, जहां connection के points, vertices के रूप में खींचे जाते हैं, और component wires ग्राफ़ के edges बन जाते हैं।
  • ग्राफ़ का उपयोग transport नेटवर्क में भी किया जाता है, जहाँ स्टेशनों को vertices के रूप में खींचा जाता है और routes ग्राफ़ के edges बन जाते हैं।
  • ग्राफ़ का उपयोग प्रोग्राम flow के विश्लेषण में किया जाता है, जहाँ procedures या modules को vertices के रूप में माना जाता है, और इन procedures के लिए कॉल को ग्राफ़ के edges के रूप में खींचा जाता है।
  • साथ ही ग्राफ़ का उपयोग उन maps में भी किया जाता है, जो शहरों/राज्यों/क्षेत्रों को vertices के रूप में और adjacency relations को edges के रूप में draw करते हैं।           आदि।

BFS और DFS algorithms में किन डेटा structure का इस्तेमाल किया जाता है?

  • BFS algorithm में, Queue डेटा structure का उपयोग किया जाता है। 
  • DFS algorithm में, Stack डेटा structure का इस्तेमाल किया जाता है। 

किस scenario में, Binary Search का इस्तेमाल किया जाता है?

Binary सर्च एल्गोरिथम का इस्तेमाल पहले से ही sort की गई list में डेटा खोजने के लिए किया जाता है। और यह algorithm divide और conquers approach तरीके का इस्तेमाल करती है। 

linear search की तुलना में binary search के क्या फायदे है?

वैसे इन दोनों सर्च में तुलना करने लायक काफी कम ही चीज़े मौजूद है। लेकिन अगर देखा जाए, तो एक औसत मामले में, linear सर्च में “n” elements की सूची खोजने में O(n) समय लगता है, जबकि binary सर्च में “n” elements की सूची खोजने में O(log n) का समय लगता है।

Selection Sort के क्या फायदे होते है?

  • यह सरल और लागू करने में काफी आसान होता है।
  • साथ ही इसका उपयोग छोटे डेटा सेट के लिए भी किया जा सकता है।
  • यह bubble सॉर्ट की तुलना में 60 प्रतिशत अधिक कुशल होता है।  आदि।

NULL और VOID में क्या अंतर है?

  • Null वास्तव में एक value ही है, जबकि void एक तरह का डेटा identifier है।
  • एक null variable केवल एक खाली value या स्थान को indicate करता है, जबकि एक void का उपयोग pointers को उसके initial size के रूप में पहचानने के लिए किया जाता है।

Multi-linked Structures के applications है?

  • इसका इस्तेमाल Sparse matrix में किया जाता है।
  • साथ ही इसे Index generation के लिए भी उपयोग किया जाता है। 

FAQ (Frequently Asked Questions)

Stack overflow का condition क्या होता है?

Overflow तब होता है, जब top = Maxsize -1.

RDBMS में किस data structure का इस्तेमाल किया जाता है?

RDBMS एक array डेटा structure का उपयोग करता है।

Network data model में किस data structure का इस्तेमाल किया जाता है?

नेटवर्क डेटा मॉडल में graph का उपयोग किया जाता है।

Hierarchical data model में किस data structure का इस्तेमाल किया जाता है?

इस डेटा मॉडल में trees डेटा structure का उपयोग किया जाता है।

Expression: (A + B) * (C – D) का postfix क्या होगा?

इसका एक्सप्रेशन का postfix है – AB+CD-*

Prefix and postfix forms का इस्तेमाल कर Arithmetic Expressions को evaluate करने के लिए किन notations का उपयोग किया जाता है?

इनमे polish और reverse polish notations का उपयोग किया जाता है।

Priority queue को implement करने के लिए minimum कितने queues का इस्तेमाल करना होगा?

ऐसा करने के लिए हमे दो queue की जरूरत होती है। एक queue का उपयोग डेटा elements को स्टोर करने के लिए किया जाता है, और दूसरे का उपयोग priorities को स्टोर करने के लिए किया जाता है।

Tree construction में किस प्रकार के data structure का इस्तेमाल सबसे ज्यादा किया जाता है?

इसके लिए सबसे ज्यादा “Queue data structure” का इस्तेमाल किया जाता है। 

आशा करता हूं कि आज आपलोंगों को कुछ नया सीखने को ज़रूर मिला होगा। अगर आज आपने कुछ नया सीखा तो हमारे बाकी के आर्टिकल्स को भी ज़रूर पढ़ें ताकि आपको ऱोज कुछ न कुछ नया सीखने को मिले, और इस articleको अपने दोस्तों और जान पहचान वालो के साथ ज़रूर share करे जिन्हें इसकी जरूरत हो। धन्यवाद।  

Also read –

SQL के 50 इंटरव्यू प्रश्न और उत्तर

Computer network के 50 इंटरव्यू प्रश्न और उत्तर


पोस्ट को share करें-

Similar Posts

2 Comments

Leave a Reply

Your email address will not be published. Required fields are marked *