Data Structure and Application (1333203) - Summer 2025 Solution (Gujarati)

Solution guide for Data Structure and Application (1333203) Summer 2025 exam

પ્રશ્ન 1(અ) [3 ગુણ]

વ્યાખ્યાયિત કરો બિગ- ઓ નોટેશન, બિગ ઓમેગા નોટેશન, બિગ થીટા નોટેશન.

જવાબ:

સારણી: એસિમ્પ્ટોટિક નોટેશન સરખામણી

નોટેશનપ્રતીકવર્ણનઉપયોગ
બિગ-ઓO(f(n))ઉપલી હદસૌથી ખરાબ કેસ
બિગ ઓમેગાΩ(f(n))નીચલી હદસૌથી સારો કેસ
બિગ થીટાΘ(f(n))ચુસ્ત હદસરેરાશ કેસ
  • બિગ-ઓ નોટેશન: મહત્તમ સમય/સ્થળ જટિલતા વર્ણવે છે
  • બિગ ઓમેગા: ન્યૂનતમ સમય/સ્થળ જટિલતા વર્ણવે છે
  • બિગ થીટા: ચોક્કસ સમય/સ્થળ જટિલતા વર્ણવે છે

મેમરી ટ્રીક: "OWT - O ખરાબ માટે, Omega શ્રેષ્ઠ માટે, Theta ચુસ્ત માટે"

પ્રશ્ન 1(બ) [4 ગુણ]

સેટ વ્યાખ્યાયિત કરો. સેટ પર કરી શકાય તેવા વિવિધ ઓપરેશનો લખો.

જવાબ:

વ્યાખ્યા: સેટ એ અનન્ય તત્વોનો સંગ્રહ છે જેમાં કોઈ ડુપ્લિકેટ નથી.

સારણી: સેટ ઓપરેશનો

ઓપરેશનપ્રતીકવર્ણનઉદાહરણ
યુનિયનA ∪ Bબધા તત્વો જોડે છે =
ઇન્ટરસેક્શનA ∩ Bસામાન્ય તત્વો =
ડિફરન્સA - BA માં છે પણ B માં નથી - =
સબસેટA ⊆ BA ના બધા તત્વો B માં છે = સાચું
  • ઉમેરવું/દાખલ કરવું: નવું તત્વ ઉમેરવું
  • દૂર કરવું/કાઢવું: અસ્તિત્વમાં રહેલું તત્વ દૂર કરવું
  • સમાવેશ: તત્વ અસ્તિત્વમાં છે કે નહીં તપાસવું

મેમરી ટ્રીક: "UIDS - યુનિયન, ઇન્ટરસેક્શન, ડિફરન્સ, સબસેટ"

પ્રશ્ન 1(ક) [7 ગુણ]

ક્રિકેટર માટે Python ક્લાસ લખો. ક્લાસ માં ક્રિકેટરનું નામ, ટીમનું નામ અને ડેટા સભ્યો તરીકે રનનો સમાવેશ થાય છે. ક્લાસ કાર્યો નીચે મુજબ છે: ડેટા સભ્યોને ઇનિશિયલાઇઝ કરવા, રન સેટ કરવા અને રન ડિસ્પ્લે કરવા.

જવાબ:

Python
  • કન્સ્ટ્રક્ટર: નામ, ટીમ અને રન ઇનિશિયલાઇઝ કરે છે
  • set_run(): રન વેલ્યુ અપડેટ કરે છે
  • display_run(): ખેલાડીની માહિતી બતાવે છે

મેમરી ટ્રીક: "CSD - કન્સ્ટ્રક્ટર, સેટ, ડિસ્પ્લે"

પ્રશ્ન 1(ક અથવા) [7 ગુણ]

વિદ્યાર્થીની માહિતી વાંચવા અને પ્રદર્શિત કરવા માટે વિદ્યાર્થી ક્લાસની રચના કરો, અને તેમાં getInfo() અને displayInfo() પદ્ધતિઓનો ઉપયોગ કરવામાં આવશે. જ્યાં getInfo() પ્રાઇવેટ પદ્ધતિ હશે.

જવાબ:

Python
  • પ્રાઇવેટ મેથડ: ડબલ અંડરસ્કોર (__getInfo) વાપરે છે
  • કન્સ્ટ્રક્ટર: આપોઆપ પ્રાઇવેટ મેથડ કૉલ કરે છે
  • પબ્લિક મેથડ: displayInfo() વિદ્યાર્થીનો ડેટા બતાવે છે

મેમરી ટ્રીક: "PCP - પ્રાઇવેટ, કન્સ્ટ્રક્ટર, પબ્લિક"

પ્રશ્ન 2(અ) [3 ગુણ]

સ્ટેક અને ક્યૂ વચ્ચે તફાવત કરો.

જવાબ:

સારણી: સ્ટેક વર્સસ ક્યૂ સરખામણી

લક્ષણસ્ટેકક્યૂ
ક્રમLIFO (છેલ્લું અંદર, પહેલું બહાર)FIFO (પહેલું અંદર, પહેલું બહાર)
ઓપરેશનોPush, PopEnqueue, Dequeue
એક્સેસ પોઇન્ટએક છેડો (ટોપ)બે છેડા (ફ્રન્ટ અને રિયર)
ઉદાહરણપ્લેટનો સ્ટેકબેંકની કતાર
  • સ્ટેક: પુસ્તકોના ઢગલા જેવું - છેલ્લું ઉમેર્યું, પહેલું કાઢ્યું
  • ક્યૂ: રાહ જોવાની લાઇન જેવું - પહેલું આવ્યું, પહેલું સેવા મળી

મેમરી ટ્રીક: "SLIF QFIF - સ્ટેક LIFO, ક્યૂ FIFO"

પ્રશ્ન 2(બ) [4 ગુણ]

રિકર્સન વ્યાખ્યાયિત કરો. ઉદાહરણ સાથે સમજાવો.

જવાબ:

વ્યાખ્યા: ફંક્શન પોતાને જ નાની સમસ્યા સાથે કૉલ કરવું જ્યાં સુધી બેઝ કંડિશન ન મળે.

Python
  • બેઝ કેસ: રોકવાની શરત
  • રિકર્સિવ કેસ: ફંક્શન પોતાને કૉલ કરે છે
  • સમસ્યા ઘટાડવી: દરેક કૉલ નાની સમસ્યા હલ કરે છે

મેમરી ટ્રીક: "BRP - બેઝ, રિકર્સિવ, પ્રોબ્લેમ-રિડક્શન"

પ્રશ્ન 2(ક) [7 ગુણ]

સ્ટેકના સાઈઝ 5 તરીકે ધ્યાનમાં લો. સ્ટેક પર નીચેની કામગીરી લાગૂ કરો અને દરેક ઑપરેશન પછી સ્ટેટસ અને ટોપ પોઇન્ટર બતાવો. Push a,b,c pop

જવાબ:

સ્ટેક ઓપરેશનો ટ્રેસ:

goat
  • Push ઓપરેશનો: ઇન્ડેક્સ 0 થી શરૂ કરીને તત્વો ઉમેરે છે
  • ટોપ પોઇન્ટર: છેલ્લે દાખલ કરેલા તત્વ તરફ પોઇન્ટ કરે છે
  • Pop ઓપરેશન: ટોપ તત્વ દૂર કરે છે, ટોપ પોઇન્ટર ઘટાડે છે

મેમરી ટ્રીક: "PTD - Push ટોપ ઘટાડવું"

પ્રશ્ન 2(અ અથવા) [3 ગુણ]

સ્ટેક અને ક્યૂની એપ્લિકેશનોની સૂચિ બનાવો.

જવાબ:

સારણી: સ્ટેક અને ક્યૂની એપ્લિકેશનો

ડેટા સ્ટ્રક્ચરએપ્લિકેશનો
સ્ટેકફંક્શન કૉલ્સ, અન્ડુ ઓપરેશનો, એક્સપ્રેશન ઇવેલ્યુએશન, બ્રાઉઝર હિસ્ટરી
ક્યૂપ્રોસેસ શેડ્યુલિંગ, પ્રિન્ટર ક્યૂ, BFS ટ્રેવર્સલ, રિક્વેસ્ટ હેન્ડલિંગ
  • સ્ટેક એપ્લિકેશનો: અન્ડુ-રિડુ, રિકર્સન, પાર્સિંગ
  • ક્યૂ એપ્લિકેશનો: ટાસ્ક શેડ્યુલિંગ, બફરિંગ, બ્રેડથ-ફર્સ્ટ સર્ચ

મેમરી ટ્રીક: "સ્ટેક FUBE, ક્યૂ SPBH"

પ્રશ્ન 2(બ અથવા) [4 ગુણ]

સ્ટેકનો ઉપયોગ કરીને નીચેના સમીકરણને પોસ્ટફિક્સ નોટેશનમાં કન્વર્ટ કરો: i) (ab)(c^d(d+e)-f) ii) a-b/(c*d/e)

જવાબ:

i) (ab)(c^d(d+e)-f)

પ્રતીકસ્ટેકઆઉટપુટ
((
a(a
*(*a
b(*ab
)ab*
**ab*
(*(ab*
c*(ab*c
^*(^ab*c
d*(^ab*cd
(*(^(ab*cd
d*(^(ab*cdd
+*(^(+ab*cdd
e*(^(+ab*cdde
)*(^ab*cdde+
)*ab*cdde+^
-*-ab*cdde+^
f*-ab*cdde+^f
abcdde+^f-

પરિણામ: abcdde+^f-

ii) a-b/(c*d/e)

પરિણામ: abcd*e/-

મેમરી ટ્રીક: "PEMDAS પોસ્ટફિક્સ માટે ઉલટું"

પ્રશ્ન 2(ક અથવા) [7 ગુણ]

લીસ્ટનો ઉપયોગ કરીને ક્યૂને અમલમાં મૂકવા માટે એક પ્રોગ્રામ ડેવલોપ કરો જે નીચેની કામગીરી કરે છે: enqueue, dequeue.

જવાબ:

Python
  • Enqueue: રિયર પર તત્વ ઉમેરે છે
  • Dequeue: ફ્રન્ટ પરથી તત્વ દૂર કરે છે
  • FIFO સિદ્ધાંત: પહેલું અંદર, પહેલું બહાર

મેમરી ટ્રીક: "ERF - Enqueue રિયર, ફ્રન્ટ"

પ્રશ્ન 3(અ) [3 ગુણ]

લિંક લિસ્ટના પ્રકારોની સૂચિ બનાવો. દરેક પ્રકારનું ગ્રાફિકલ રજૂઆત આપો.

જવાબ:

સારણી: લિંક લિસ્ટના પ્રકારો

પ્રકારવર્ણનડાયાગ્રામ
સિંગલીએક દિશા પોઇન્ટરA→B→C→NULL
ડબલીબે દિશા પોઇન્ટરોNULL←A⇄B⇄C→NULL
સર્ક્યુલરછેલ્લું પહેલા તરફ પોઇન્ટ કરેA→B→C→A
goat

મેમરી ટ્રીક: "SDC - સિંગલી, ડબલી, સર્ક્યુલર"

પ્રશ્ન 3(બ) [4 ગુણ]

સિંગલી લિંક લિસ્ટમાં આપેલ નોડ શોધવા માટે એક અલ્ગોરિધમ લખો.

જવાબ:

Python
  • લીનિયર સર્ચ: હેડ થી ટેઇલ સુધી ટ્રાવર્સ કરો
  • ટાઇમ કોમ્પ્લેક્સિટી: O(n)
  • રિટર્ન: મળ્યું તો પોઝિશન, નહીં તો -1

મેમરી ટ્રીક: "SCMR - શરૂ, સરખાવો, આગળ વધો, રિટર્ન"

પ્રશ્ન 3(ક) [7 ગુણ]

સિંગલી લિંક લિસ્ટ પર પર નીચેની કામગીરી કરવા માટે પ્રોગ્રામનો અમલ કરો: 1)સિંગલી લિંક લિસ્ટ ની શરૂઆતમાં નોડ દાખલ કરો 2)સિંગલી લિંક લિસ્ટની શરૂઆતથી નોડ કાઢી નાખો

જવાબ:

Python
  • ઇન્સર્ટ: નોડ બનાવો, હેડ સાથે જોડો, હેડ અપડેટ કરો
  • ડિલીટ: ડેટા સ્ટોર કરો, હેડને આગળ ખસેડો, ડેટા રિટર્ન કરો

મેમરી ટ્રીક: "CLU - બનાવો, જોડો, અપડેટ"

પ્રશ્ન 3(અ અથવા) [3 ગુણ]

સર્ક્યુલર લિંક લિસ્ટ અને સિંગલી લિંક લિસ્ટ વચ્ચે તફાવત કરો.

જવાબ:

સારણી: સર્ક્યુલર વર્સસ સિંગલી લિંક લિસ્ટ

લક્ષણસિંગલી લિંક લિસ્ટસર્ક્યુલર લિંક લિસ્ટ
છેલ્લો નોડ પોઇન્ટ કરે છેNULLપહેલા નોડ (હેડ)
ટ્રાવર્સલલીનિયર (એક દિશા)સર્ક્યુલર (સતત)
અંત ડિટેક્શનnext == NULLnext == head
મેમરીઓછી (વધારાનું પોઇન્ટર નહીં)સમાન સ્ટ્રક્ચર
  • સર્ક્યુલર ફાયદો: NULL પોઇન્ટરો નહીં, સતત ટ્રાવર્સલ
  • સિંગલી ફાયદો: સાદું અમલીકરણ, સ્પષ્ટ અંત

મેમરી ટ્રીક: "CNTE - સર્ક્યુલર કોઈ સમાપ્તિ અંત નહીં"

પ્રશ્ન 3(બ અથવા) [4 ગુણ]

સંક્ષિપ્તમાં લિંક લિસ્ટ સૂચિની ત્રણ એપ્લિકેશનો સમજાવો.

જવાબ:

સારણી: લિંક લિસ્ટ એપ્લિકેશનો

એપ્લિકેશનવર્ણનફાયદો
ડાયનામિક મેમરી એલોકેશનમેમરી બ્લોક્સ મેનેજ કરે છેકાર્યક્ષમ મેમરી ઉપયોગ
સ્ટેક/ક્યૂનું અમલીકરણલિંક સ્ટ્રક્ચર ઉપયોગ કરે છેડાયનામિક સાઇઝ
પોલિનોમિયલ રજૂઆતગુણાંક અને પાવર સ્ટોર કરે છેસરળ અંકગણિત ઓપરેશનો
  • મ્યુઝિક પ્લેલિસ્ટ: ગીતો ડાયનામિક ઉમેરવા/દૂર કરવા
  • બ્રાઉઝર હિસ્ટરી: પાછળ/આગળ નેવિગેટ કરવા
  • ઇમેજ વ્યૂઅર: પહેલું/આગલું ઇમેજ નેવિગેશન

મેમરી ટ્રીક: "DIP - ડાયનામિક, અમલીકરણ, પોલિનોમિયલ"

પ્રશ્ન 3(ક અથવા) [7 ગુણ]

સર્ક્યુલર લિંક લિસ્ટ ને બનાવવા અને પ્રદર્શિત કરવા માટે એક પ્રોગ્રામ ડેવલોપ કરો.

જવાબ:

Python
  • બનાવટ: છેલ્લા નોડને હેડ સાથે જોડવું
  • ડિસ્પ્લે: ફરીથી હેડ પર પહોંચવા સુધી બંધ કરવું

મેમરી ટ્રીક: "CLH - બનાવો, જોડો, હેડ"

પ્રશ્ન 4(અ) [3 ગુણ]

સિલેક્શન સૉર્ટ પદ્ધતિનો પ્રોગ્રામ લખો.

જવાબ:

Python
  • મિનિમમ શોધો: અનસૉર્ટેડ ભાગમાં
  • સ્વેપ: પ્રથમ અનસૉર્ટેડ એલિમેન્ટ સાથે
  • ટાઇમ કોમ્પ્લેક્સિટી: O(n²)

મેમરી ટ્રીક: "FMS - શોધો, મિનિમમ, સ્વેપ"

પ્રશ્ન 4(બ) [4 ગુણ]

નીચેના ડેટાને ચડતા ક્રમમાં ગોઠવવા માટે ઇન્સર્શન સૉર્ટ લાગૂ કરો. 25 15 35 20 30 5 10

જવાબ:

ઇન્સર્શન સૉર્ટ સ્ટેપ્સ:

શરૂઆત: [25, 15, 35, 20, 30, 5, 10]

પાસ 1: [15, 25, 35, 20, 30, 5, 10]  (15 ઇન્સર્ટ કર્યું)
પાસ 2: [15, 25, 35, 20, 30, 5, 10]  (35 જગ્યાએ)
પાસ 3: [15, 20, 25, 35, 30, 5, 10]  (20 ઇન્સર્ટ કર્યું)
પાસ 4: [15, 20, 25, 30, 35, 5, 10]  (30 ઇન્સર્ટ કર્યું)
પાસ 5: [5, 15, 20, 25, 30, 35, 10]  (5 ઇન્સર્ટ કર્યું)
પાસ 6: [5, 10, 15, 20, 25, 30, 35]  (10 ઇન્સર્ટ કર્યું)

અંતિમ: [5, 10, 15, 20, 25, 30, 35]
  • પદ્ધતિ: એલિમેન્ટ લો, સૉર્ટેડ ભાગમાં સ્થાન શોધો
  • સરખામણીઓ: કુલ 15 સરખામણીઓ
  • શિફ્ટ્સ: જગ્યા બનાવવા માટે એલિમેન્ટ્સ ખસેડવા

મેમરી ટ્રીક: "TFI - લેવું, શોધવું, ઇન્સર્ટ કરવું"

પ્રશ્ન 4(ક) [7 ગુણ]

લીનિયર સર્ચનો ઉપયોગ કરીને લિસ્ટમાંથી ચોક્કસ તત્વ શોધવા માટે પાયથોન પ્રોગ્રામનો અમલ કરો.

જવાબ:

Python
  • સિક્વન્શિયલ સર્ચ: દરેક એલિમેન્ટ એક પછી એક તપાસવું
  • ટાઇમ કોમ્પ્લેક્સિટી: O(n) સૌથી ખરાબ કેસ
  • બેસ્ટ કેસ: O(1) જો પ્રથમ પોઝિશન પર મળે

મેમરી ટ્રીક: "CEO - દરેક એક તપાસો"

પ્રશ્ન 4(અ અથવા) [3 ગુણ]

ઇન્સર્શન સૉર્ટ પદ્ધતિનો પ્રોગ્રામ લખો.

જવાબ:

Python
  • કી એલિમેન્ટ: વર્તમાન એલિમેન્ટ જે ઇન્સર્ટ કરવાનું છે
  • જમણી બાજુ શિફ્ટ: મોટા એલિમેન્ટ્સ જમણી બાજુ ખસે છે
  • ઇન્સર્ટ: યોગ્ય સ્થાને કી

મેમરી ટ્રીક: "KSI - કી, શિફ્ટ, ઇન્સર્ટ"

પ્રશ્ન 4(બ અથવા) [4 ગુણ]

નીચેના ડેટાને ક્વિક સૉર્ટ લાગૂ કરો અને તેમને યોગ્ય રીતે ગોઠવો. 5 6 1 8 2 9 10 15 7 13

જવાબ:

ક્વિક સૉર્ટ સ્ટેપ્સ:

શરૂઆત: [5, 6, 1, 8, 2, 9, 10, 15, 7, 13]
પિવોટ: 5 (પ્રથમ એલિમેન્ટ)

પાર્ટિશન 1: [1, 2] 5 [6, 8, 9, 10, 15, 7, 13]

ડાબો સબએરે [1, 2]:
પિવોટ: 1 → [] 1 [2]
પરિણામ: [1, 2]

જમણો સબએરે [6, 8, 9, 10, 15, 7, 13]:
પિવોટ: 6 → [] 6 [8, 9, 10, 15, 7, 13]

પાર્ટિશનિંગ ચાલુ...

અંતિમ: [1, 2, 5, 6, 7, 8, 9, 10, 13, 15]
  • વિભાજન: પિવોટ પસંદ કરો, તેની આસપાસ પાર્ટિશન કરો
  • જીતો: સબએરેને રીકર્સિવલી સૉર્ટ કરો
  • સરેરાશ સમય: O(n log n)

મેમરી ટ્રીક: "DCC - વિભાજન, જીતો, જોડો"

પ્રશ્ન 4(ક અથવા) [7 ગુણ]

મર્જ સૉર્ટ અલ્ગોરિધમનો અમલ કરો.

જવાબ:

Python
  • વિભાજન: એરેને અડધામાં વિભાજિત કરો
  • મર્જ: સૉર્ટેડ સબએરેને જોડો
  • ટાઇમ કોમ્પ્લેક્સિટી: હંમેશા O(n log n)

મેમરી ટ્રીક: "DSM - વિભાજન, સૉર્ટ, મર્જ"

પ્રશ્ન 5(અ) [3 ગુણ]

ટૂંકી નોંધ લખો: એપ્લિકેશન ઓફ ટ્રી.

જવાબ:

સારણી: ટ્રી એપ્લિકેશનો

એપ્લિકેશનવર્ણનઉદાહરણ
ફાઇલ સિસ્ટમડિરેક્ટરી સ્ટ્રક્ચરફોલ્ડર અને ફાઇલો
એક્સપ્રેશન પાર્સિંગગાણિતિક સમીકરણો(a+b)*c
ડેટાબેઝ ઇન્ડેક્સિંગઝડપી ડેટા પુનઃપ્રાપ્તિડેટાબેઝમાં B-ટ્રીઝ
  • ડિસિઝન ટ્રીઝ: AI અને મશીન લર્નિંગ
  • હફમેન કોડિંગ: ડેટા કોમ્પ્રેશન
  • ગેમ ટ્રીઝ: ચેસ, ટિક-ટેક-ટો

મેમરી ટ્રીક: "FED - ફાઇલ, એક્સપ્રેશન, ડેટાબેઝ"

પ્રશ્ન 5(બ) [4 ગુણ]

વિવિધ ટ્રી ટ્રાવર્સલ પદ્ધતિઓ સમજાવો.

જવાબ:

સારણી: ટ્રી ટ્રાવર્સલ પદ્ધતિઓ

પદ્ધતિક્રમપ્રક્રિયા
ઇનઓર્ડરડાબે-રૂટ-જમણેLNR
પ્રીઓર્ડરરૂટ-ડાબે-જમણેNLR
પોસ્ટઓર્ડરડાબે-જમણે-રૂટLRN
goat
  • ઇનઓર્ડર: BST માટે સૉર્ટેડ સિક્વન્સ આપે છે
  • પ્રીઓર્ડર: ટ્રી કોપી કરવા માટે વપરાય છે
  • પોસ્ટઓર્ડર: ટ્રી ડિલીટ કરવા માટે વપરાય છે

મેમરી ટ્રીક: "LNR PNL LRN ઇન-પ્રી-પોસ્ટ માટે"

પ્રશ્ન 5(ક) [7 ગુણ]

બાઇનરી સર્ચ ટ્રી પર નીચેની કામગીરી કરવા માટે મેન્યૂ સંચાલિત પ્રોગ્રામ લખો: BST ટ્રી બનાવવા માટેનો પ્રોગ્રામ.

જવાબ:

Python
  • BST ગુણધર્મ: ડાબે < રૂટ < જમણે
  • ઇન્સર્શન: સરખાવો અને ડાબે/જમણે જાઓ
  • મેન્યૂ ડ્રિવન: વપરાશકર્તા-મૈત્રીપૂર્ણ ઇન્ટરફેસ

મેમરી ટ્રીક: "CIM - સરખાવો, ઇન્સર્ટ, મેન્યૂ"

પ્રશ્ન 5(અ અથવા) [3 ગુણ]

વ્યાખ્યાયિત કરો અને ઉદાહરણો આપો: સ્ટ્રિક્ટ બાઇનરી ટ્રી અને કમ્પ્લીટ બાઇનરી ટ્રી.

જવાબ:

સારણી: બાઇનરી ટ્રી પ્રકારો

પ્રકારવ્યાખ્યાઉદાહરણ
સ્ટ્રિક્ટ બાઇનરી ટ્રીદરેક નોડને 0 અથવા 2 બાળકો છેદરેક આંતરિક નોડને બરાબર 2 બાળકો
કમ્પ્લીટ બાઇનરી ટ્રીછેલ્લા સિવાય બધા લેવલ ભરેલા, ડાબેથી જમણે ભરેલાબીજા છેલ્લા લેવલ સુધી પરફેક્ટ સ્ટ્રક્ચર
goat
  • સ્ટ્રિક્ટ: એક બાળક વાળો કોઈ નોડ નહીં
  • કમ્પ્લીટ: શ્રેષ્ઠ સ્પેસ ઉપયોગ

મેમરી ટ્રીક: "SC - સ્ટ્રિક્ટ કમ્પ્લીટ"

પ્રશ્ન 5(બ અથવા) [4 ગુણ]

બાઇનરી ટ્રીની મૂળભૂત પરિભાષા સમજાવો: લેવલ નંબર, ડિગ્રી, ઇન-ડિગ્રી, આઉટ-ડિગ્રી, લીફ નોડ.

જવાબ:

goat

સારણી: બાઇનરી ટ્રી પરિભાષા

શબ્દવ્યાખ્યાઉદાહરણ
લેવલ નંબરરૂટથી અંતર (રૂટ = 0)A=0, B=1, D=2
ડિગ્રીબાળકોની સંખ્યાA=2, B=2, C=1
ઇન-ડિગ્રીઆવતા એજની સંખ્યાબધા નોડ = 1 (સિવાય રૂટ = 0)
આઉટ-ડિગ્રીજતા એજની સંખ્યાડિગ્રી સમાન
લીફ નોડબાળકો ન હોય તેવો નોડD, E, F

મેમરી ટ્રીક: "LDIOL - લેવલ, ડિગ્રી, ઇન-આઉટ, લીફ"

પ્રશ્ન 5(ક અથવા) [7 ગુણ]

બાઇનરી સર્ચ ટ્રી પર નીચેની કામગીરી કરવા માટે મેન્યૂ સંચાલિત પ્રોગ્રામ લખો: BST માં એક એલિમેન્ટ દાખલ કરો.

જવાબ:

Python
  • ઇન્સર્ટ લોજિક: વર્તમાન નોડ સાથે સરખાવો, ડાબે/જમણે જાઓ
  • રિકર્સિવ એપ્રોચ: સ્વચ્છ અને કાર્યક્ષમ અમલીકરણ
  • મેન્યૂ સિસ્ટમ: ઇન્ટરેક્ટિવ વપરાશકર્તા ઇન્ટરફેસ

મેમરી ટ્રીક: "CRL - સરખાવો, રિકર્સિવ, ડાબે/જમણે"