[સંગીત વગાડવાનો] ZAMYLA ચાન: તમે કદાચ પ્રથમ વસ્તુ શોધ વિશે નોટિસ કે અમે પહેલાથી જ કોડ આપણા માટે લખ્યું છે. આ વિતરણ કોડ તરીકે ઓળખાય છે. તેથી અમે અમારા પોતાના લેખન કરી રહ્યા છીએ હવે શરૂઆતથી કોડ. તેના બદલે, અમે સમાપ્ત થઈ જાય છે ભરતા રહ્યા છો કેટલાક પૂર્વ અસ્તિત્વમાં કોડમાં. આ find.c કાર્યક્રમ નંબરો માટે પૂછે છે આ haystack ભરવા માટે, શોધે છે વપરાશકર્તા સબમિટ સોય માટે haystack, અને તે પ્રકારના ફોન અને દ્વારા કરે છે શોધ, કાર્યો વ્યાખ્યાયિત helpers.c માં. તેથી find.c પહેલેથી જ લખાયેલ છે. તમારી નોકરી મદદગારો લખી છે. તેથી અમે શું કરી રહ્યા છે? અમે બે કાર્યો અમલ કરી રહ્યા છીએ. સાચું આપે જે શોધો, તો નીચેની પરત, આ haystack જોવા મળે છે ખોટા કિંમત છે નથી આ haystack માં. અને પછી અમે પણ પ્રકારની અમલ કરી રહ્યા છીએ જે કિંમતો કહેવાય એરે પ્રકારના. તેથી આપણે શોધ હલ કરીએ. શોધ વર્તમાનમાં તરીકે લાગુ પાડવામાં આવે છે રેખીય શોધ છે, પરંતુ તમે ઘણું બધું કરી શકો છો તે કરતાં વધુ સારી. લીનિયર શોધ કંઈપણ અમલમાં મૂકાયેલ છે n એ સમય છે, જે ખૂબ ધીમી છે. છે, તે શોધ કરી શકો છો તે આપવામાં કોઈપણ યાદી. તમારી નોકરી દ્વિસંગી શોધ અમલ કરવા માટે છે, લોગ n ના સમય કંઈપણ સ્કોર છે જે. કે ખૂબ ઝડપી છે. પરંતુ એક શરત છે. બાઈનરી શોધો માત્ર શોધ કરી શકો છો પૂર્વ છટણી યાદીઓમાં. શા માટે છે? વેલ ચાલો એક ઉદાહરણ જુઓ. કિંમતો પણ દર્શાવે છે આપવામાં આવે છે, આ haystack, અમે શોધી કરી રહ્યા છીએ સોય માટે. અને આ ઉદાહરણમાં, પૂર્ણાંક ત્રણ. દ્વિસંગી શોધ કામ કરે છે કે જે રીતે કે અમે મધ્યમાં કિંમત કરો ખૂબ છે કે સોય માટે એરે, કેવી રીતે અમે મધ્યમ માટે એક ફોનબુક ખોલી સપ્તાહ શૂન્ય માં પાનું. તેથી માટે મધ્યમ કિંમત સરખામણી બાદ સોય, તમે ક્યાં તો કાઢી શકો છો ડાબે અથવા એરે જમણી અડધા તમારા ભૂસકે કડક છે. આ કિસ્સામાં, ત્રણ થી અમારા સોય, 10 કરતાં ઓછી, મધ્યમ કિંમત, છે અધિકાર બાઉન્ડ ઘટાડી શકે છે. પરંતુ તમારા ભૂસકે બનાવવા પ્રયાસ શક્ય ચુસ્ત. મધ્યમ કિંમત સોય નથી, પછી તમે તમારા માટે જરૂર નથી ખબર છે કે તમારી શોધ માં સમાવેશ થાય છે. તેથી તમે બંધાયેલા છો સજ્જડ કરી શકો છો માત્ર એક નાના બીટ વધુ સર્ચ ભૂસકે, અને તેથી અને તેથી આગળ સુધી તમે તમારા સોય શોધો. તેથી શું સ્યુડોકોડનો લાગતું નથી? અમે હજુ પણ મારફતે શોધી રહ્યાં છો વેલ જ્યારે યાદી અને હજુ પણ તત્વો છે જુઓ, અમે યાદી મધ્યમાં લાગી અને છે કે મધ્યમ કિંમત કરો અમારા સોય. તેઓ સમાન છો, તો પછી તે અમે કર્યું છે એટલે સોય મળી અને અમે કરી શકો છો સાચું આવો. નહિં તો, સોય કરતાં ઓછું હોય તો મધ્યમ કિંમત, પછી તે અર્થ એ થાય કે અમે જમણી અડધા કાઢી, અને માત્ર કરી શકો છો એરે ડાબી બાજુ શોધો. અન્યથા, અમે શોધવા પડશે એરે જમણી બાજુ. અને અંતે, જો તમે કોઇ નથી વધુ શોધવા માટે ડાબી બાજુ તત્વો પણ તમે પછી તમે હજુ સુધી તમારા સોય મળ્યા નથી ખોટા પાછા કારણ કે સોય ચોક્કસપણે આ haystack નથી. આ સ્યુડોકોડનો વિશે હવે સુઘડ વસ્તુ દ્વિસંગી શોધ માં હોઈ શકે છે પુનરાવર્તન ક્યાં તરીકે અર્થઘટન અથવા ફરી યાદ આવવું અમલ. તમને કહેવામાં આવે તો તે ફરી યાદ આવવું હશે શોધ અંદર શોધ કાર્ય એરે ક્યાં અડધા ભાગ પર કામ કરે છે. અમે થોડી પાછળથી માં રિકર્ઝન આવરી પડશે અલબત્ત, પરંતુ તે એક છે કે જે જાણો છો વિકલ્પ તમને પ્રયાસ કરવા માંગો છો. હવે આપણે સૉર્ટ જુઓ. સૉર્ટ કરો ઝાકઝમાળ અને પૂર્ણાંક લે એરે નું માપ છે જે n એ,. હવે વિવિધ પ્રકારના હોય છે પ્રકારની છે, અને તમે કેટલાક જોવા કરી શકો છો જનતા અને સ્પષ્ટતા માટે શોર્ટ્સ. માટે વળતર પ્રકાર અમારા સૉર્ટ કાર્ય રદબાતલ છે. જેથી અમે જઈ રહ્યાં છો કે જે થાય છે સૉર્ટ કોઇ પણ એરે પાછા. અમે ખરેખર ખૂબ જ બદલી રહ્યા છીએ અમને માં પસાર કરવામાં આવ્યો હતો કે દર્શાવે છે. એરે છે અને કારણ કે તે શક્ય છે હવે અમે સી માં સંદર્ભ દ્વારા પસાર પડશે પાછળથી આ વિશે વધુ હતા, પરંતુ પસાર વચ્ચે જરૂરી તફાવત પૂર્ણાંક અને પસાર કંઈક ઝાકઝમાળ, કે જ્યારે તમે પૂર્ણાંક પાસ, સી માત્ર રહ્યું છે કે પૂર્ણાંક ની નકલ કરો અને પસાર કામ કરવા માટે તે. મૂળ ચલ બદલી શકાય નહીં કાર્ય સમાપ્ત થાય છે. ઝાકઝમાળ સાથે, બીજી તરફ, તે છે નકલ કરી રહ્યા છે, અને તમે પડશે નથી ખરેખર ફેરફાર કરી આ ખૂબ જ એરે પોતે. તેથી સૉર્ટ એક પ્રકાર છે પસંદગી સૉર્ટ કરો. આ પસંદગી સૉર્ટ શરૂ કરીને કામ કરે છે તમે ફરી વળવું પછી શરૂઆત, અને ઉપર અને નાના તત્વ શોધો. અને પછી તમે સ્વેપ કે નાના પ્રથમ એક સાથે તત્વ. અને પછી તમે બીજી તત્વ ખસેડવા , આગામી નાના શોધવા પછી તત્વ, અને સ્વેપ કે સાથે એરે બીજા તત્વ કારણ કે પ્રથમ તત્વ પહેલેથી સૉર્ટ થાય છે. અને તેથી તે પછી તમે દરેક માટે ચાલુ નાના ઓળખી તત્વ કિંમત અને તે જેઓ. હું 0, ખૂબ જ પ્રથમ તત્વ સમકક્ષ હોય છે માટે n એ 1 બાદ માટે, તમે કરો રહ્યા છીએ દરેક આગામી કે પછી કિંમત અને શોધવા લઘુત્તમ મૂલ્ય ઇન્ડેક્સ. તમે ન્યૂનતમ કિંમત ઇન્ડેક્સ શોધવા જાય, તમે એરે તે કિંમત સ્વેપ કરી શકો છો લઘુત્તમ અને એરે આઇ સૉર્ટ બીજા પ્રકારના કે તમે કરી શકો છો અમલ પરપોટા જેવું છે. ઉપર યાદી તેથી બબલ સૉર્ટ iterates અડીને તત્વો અને સરખામણી તત્વો જેઓ કે ખોટા ક્રમમાં છે. અને આ રીતે, સૌથી તત્વ બબલ અંત સુધી ચાલશે. અને આ યાદીમાં વધુ એક વખત સૉર્ટ થાય છે તત્વો સ્વૅપ કરવામાં આવી છે. તેથી તે પ્રકારના બે ઉદાહરણો છે તમારા માટે અમલમાં મૂકી શકે છે કે ગાણિતીક નિયમો શોધી કાર્યક્રમ. તમે પ્રકારના સમાપ્ત, અને તમે એક વાર શોધ કરવામાં આવે છે, તમે પૂર્ણ કરી રહ્યાં છો. મારું નામ Zamyla છે, અને આ CS50 છે. [સંગીત વગાડવાનો]