1 00:00:00,000 --> 00:00:11,904 >> [સંગીત વગાડવાનો] 2 00:00:11,904 --> 00:00:12,910 >> પ્રોફેસર: બધા અધિકાર. 3 00:00:12,910 --> 00:00:16,730 આ CS50 છે અને આ છે સપ્તાહ ત્રણ ઓવરને. 4 00:00:16,730 --> 00:00:20,230 તેથી અમે અહીં આજે છો, નથી સેન્ડર્સ તેના બદલે Weidner લાયબ્રેરી થિયેટર. 5 00:00:20,230 --> 00:00:23,170 જે અંદર એક સ્ટુડિયો છે હાઉસર સ્ટુડિયો તરીકે ઓળખાય છે, 6 00:00:23,170 --> 00:00:28,310 અથવા આપણે સ્ટુડિયો એચ કહે છે, અથવા રહેશે તમે તે મજાક આનંદ તો અમે કહેવું, 7 00:00:28,310 --> 00:00:30,540 તે ખરેખર છે સહાધ્યાયી, માર્ક, ઓનલાઇન, 8 00:00:30,540 --> 00:00:32,420 જે ટ્વિટર દ્વારા તેટલી સૂચન કર્યું. 9 00:00:32,420 --> 00:00:34,270 હવે લગભગ ઠંડી શું છે સ્ટુડિયોમાં અહીં હોવા 10 00:00:34,270 --> 00:00:38,410 હું આ લીલા દ્વારા ઘેરાયેલું છું છે કે દિવાલો, લીલા સ્ક્રીન અથવા Chromakey, 11 00:00:38,410 --> 00:00:43,290 તેથી CS50 જેનો અર્થ છે કે વાત કરવા માટે મને અજ્ઞાત પ્રોડક્શન ટીમ, 12 00:00:43,290 --> 00:00:47,380 હમણાં, મૂકવા હોઈ શકે છે મને સૌથી વિશ્વમાં ગમે ત્યાં, 13 00:00:47,380 --> 00:00:48,660 વધુ સારા માટે અથવા ખરાબ માટે. 14 00:00:48,660 --> 00:00:51,800 >> હવે શું આગળ સમસ્યા સેટ આવેલું બે, આ સપ્તાહ માટે તમારા હાથમાં છે 15 00:00:51,800 --> 00:00:53,830 પરંતુ સમસ્યા સાથે સુયોજિત ત્રણ આ આગામી સપ્તાહ, 16 00:00:53,830 --> 00:00:56,600 તમારી સાથે પડકારવામાં આવશે 15 કહેવાતા રમત 17 00:00:56,600 --> 00:00:58,960 જૂની પક્ષ તરફેણમાં કે તમે પ્રાપ્ત યાદ શકે છે 18 00:00:58,960 --> 00:01:02,030 સમગ્ર ટોળું છે કે એક બાળક તરીકે અપ ડાઉન, સ્લાઇડ કરી શકો છો કે જે નંબરો, 19 00:01:02,030 --> 00:01:05,790 ડાબી અને જમણી છે, અને એક તફાવત છે પઝલ અંદર જેમાં તમે 20 00:01:05,790 --> 00:01:07,840 વાસ્તવમાં તે પઝલ ટુકડાઓ સ્લાઇડ કરી શકો છો. 21 00:01:07,840 --> 00:01:11,150 આખરે તમે આ પ્રાપ્ત કેટલાક અર્ધ રેન્ડમ ક્રમમાં પઝલ, 22 00:01:11,150 --> 00:01:12,940 અને ધ્યેય છે નીચે, ટોચ સૉર્ટ, 23 00:01:12,940 --> 00:01:16,310 એક, ડાબેથી જમણે 15 મારફતે તમામ રીતે. 24 00:01:16,310 --> 00:01:19,360 >> કમનસીબે, અમલીકરણ તમે હાથ પર પડશે 25 00:01:19,360 --> 00:01:21,590 સોફ્ટવેર હોઈ ચાલે છે આધારિત નથી શારીરિક. 26 00:01:21,590 --> 00:01:25,280 તમે ખરેખર લખવા માટે હોય રહ્યા છીએ કોડ કે જે વિદ્યાર્થી અથવા વપરાશકર્તા સાથે 27 00:01:25,280 --> 00:01:26,760 15 રમત રમે છે. 28 00:01:26,760 --> 00:01:29,030 અને હકીકતમાં, હેકર માં 15 રમત આવૃત્તિ, 29 00:01:29,030 --> 00:01:32,155 તમે એક પડકાર અમલ કરવા પ્રયત્ન કરીશું, આ જૂના શાળા માત્ર રમતા 30 00:01:32,155 --> 00:01:35,010 રમત છે, પરંતુ તેના બદલે નિરાકરણ તે, ભગવાન સ્થિતિ અમલીકરણ, 31 00:01:35,010 --> 00:01:38,280 તેથી વાત કરવા માટે, ખરેખર છે કે જે માનવ માટે પઝલ નિવારે, 32 00:01:38,280 --> 00:01:41,080 સંકેતની સાથે તેમને આપીને, સંકેત પછી, સંકેત પછી. 33 00:01:41,080 --> 00:01:42,280 કે આગામી સપ્તાહ પર તેથી વધુ. 34 00:01:42,280 --> 00:01:43,720 પરંતુ તે આગળ આવેલું છે. 35 00:01:43,720 --> 00:01:47,610 >> હવે યાદ છે કે અગાઉ આ સપ્તાહે જો તમે કરશે, અમે આ ક્લિફહેન્ગર હતી 36 00:01:47,610 --> 00:01:52,560 જેમાં અમે સૉર્ટ કરી રહ્યા હતા શ્રેષ્ઠ મુજબની n ના ઓ મોટા બંધાયેલ ઉપર હતી 37 00:01:52,560 --> 00:01:53,210 સ્ક્વેર્ડ. 38 00:01:53,210 --> 00:01:56,520 અન્ય શબ્દોમાં, બબલ સૉર્ટ કરો, પસંદગી સૉર્ટ કરો, નિવેશ સૉર્ટ કરો, 39 00:01:56,520 --> 00:01:59,120 તેમને બધા અલગ અલગ છે, જ્યારે તેમના અમલીકરણ માં, 40 00:01:59,120 --> 00:02:03,480 ચાલી સ્ક્વેર્ડ n એ માં હસ્તાંતરિત ખૂબ જ ખરાબ કેસ સમય. 41 00:02:03,480 --> 00:02:06,010 અને અમે સામાન્ય રીતે ધારે છે કે સૉર્ટ માટે ખૂબ જ ખરાબ કેસ 42 00:02:06,010 --> 00:02:08,814 એક કે તમારી ઇનપુટ્સ છે સંપૂર્ણપણે પાછળની છે. 43 00:02:08,814 --> 00:02:11,980 અને ખરેખર, તે તદ્દન થોડા પગલાંઓ લીધો તે ગાણિતીક નિયમો દરેક અમલ. 44 00:02:11,980 --> 00:02:15,110 >> હવે વર્ગ ખૂબ જ ઓવરને અંતે રિકોલ, અમે બબલ સૉર્ટ સરખામણીમાં 45 00:02:15,110 --> 00:02:19,390 અન્ય એક સામે પસંદગી સૉર્ટ સામે કે અમે તે સમયે મર્જ સૉર્ટ કહેવાય 46 00:02:19,390 --> 00:02:22,120 અને હું તેને લેવા કે પ્રસ્તાવ સપ્તાહ એક પાઠ લાભ 47 00:02:22,120 --> 00:02:24,060 શૂન્ય, ભાગલા પાડો અને જીતી. 48 00:02:24,060 --> 00:02:28,810 અને કોઈક અમુક પ્રકારની હાંસલ લઘુગુણકીય આખરે સમય ચાલી રહ્યું છે, 49 00:02:28,810 --> 00:02:31,024 તેના બદલે કંઈક કે કેવળ વર્ગાત્મક છે. 50 00:02:31,024 --> 00:02:33,440 અને તે ખૂબ લઘુગુણકીય નથી તે કરતાં થોડી વધુ છે. 51 00:02:33,440 --> 00:02:36,520 પરંતુ તમે વર્ગ યાદ તો, તે ખૂબ, ખૂબ ઝડપી હતી. 52 00:02:36,520 --> 00:02:38,210 અમે બોલ બાકી જ્યાં પર એક નજર કરીએ. 53 00:02:38,210 --> 00:02:41,880 54 00:02:41,880 --> 00:02:45,370 >> પસંદગી વિરુદ્ધ બબલ સૉર્ટ સૉર્ટ મર્જ સૉર્ટ વિરુદ્ધ. 55 00:02:45,370 --> 00:02:47,700 હવે તેઓ બધા માં, ચલાવી રહ્યા છો સિદ્ધાંત, તે જ સમયે. 56 00:02:47,700 --> 00:02:50,510 CPU એ જ ઝડપે ચાલી રહ્યું છે. 57 00:02:50,510 --> 00:02:54,990 પરંતુ તમે કેવી રીતે કંટાળાજનક આ લાગે છે ખૂબ જ ઝડપથી બની રહ્યું છે, 58 00:02:54,990 --> 00:02:58,790 અને માત્ર કેવી રીતે ઝડપી, અમે જ્યારે પિચકારીની સપ્તાહ શૂન્ય ગાણિતીક નિયમો એક બીટ, 59 00:02:58,790 --> 00:03:00,080 અમે વસ્તુઓ વેગ કરી શકો છો. 60 00:03:00,080 --> 00:03:01,630 >> માર્ક સૉર્ટ અમેઝિંગ જુએ છે. 61 00:03:01,630 --> 00:03:05,220 અમે કેવી રીતે માટે, તે લાભ કરી શકો છો વધુ ઝડપથી નંબરો સૉર્ટ. 62 00:03:05,220 --> 00:03:07,140 વેલ પાછા વિચાર કરવા દો એક ઘટક કે અમે 63 00:03:07,140 --> 00:03:10,380 કે, સપ્તાહ શૂન્ય પાછા હતી એક ફોન પુસ્તક કોઈને માટે શોધ, 64 00:03:10,380 --> 00:03:12,380 અને યાદ અમે રજૂઆત કરી કે, સ્યુડોકોડનો, 65 00:03:12,380 --> 00:03:14,560 જે મારફતે અમે શોધી શકો છો માઇક સ્મિથ જેવા કોઇક, 66 00:03:14,560 --> 00:03:16,310 આ જેવી થોડી કંઈક હતા. 67 00:03:16,310 --> 00:03:20,820 >> હવે ખાસ કરીને એક નજર વાક્ય પર 7 અને 8, અને 10 અને 11, 68 00:03:20,820 --> 00:03:25,240 અમે રાખવામાં જેમાં જે તે લૂપ પ્રેરિત ફરી, અને ફરીથી પાછા રેખા 3 પર જઈ, 69 00:03:25,240 --> 00:03:26,520 અને ફરીથી. 70 00:03:26,520 --> 00:03:31,790 પરંતુ તે અમે જોઈ શકો છો કે બહાર વળે આ અલ્ગોરિધમનો, અહીં સ્યુડોકોડનો, 71 00:03:31,790 --> 00:03:33,620 વધુ સર્વગ્રાહીપણે થોડી. 72 00:03:33,620 --> 00:03:35,960 હકીકતમાં, હું શું શોધી રહ્યો છું અહીં સ્ક્રીન પર, 73 00:03:35,960 --> 00:03:41,180 માટે શોધ માટે એક એલ્ગોરિધમ છે પૃષ્ઠોને કેટલાક સમૂહ વચ્ચે માઇક સ્મિથ. 74 00:03:41,180 --> 00:03:45,520 અને ખરેખર, અમે આ સરળ કરી શકે છે તે રેખાઓ 7 અને 8 માં અલ્ગોરિધમનો 75 00:03:45,520 --> 00:03:49,860 અને 10 અને 11, ફક્ત આ કહેવું જે હું પીળો અહીં પ્રસ્તુત કર્યું છે. 76 00:03:49,860 --> 00:03:52,210 અન્ય શબ્દોમાં, જો માઇક સ્મિથ અગાઉ પુસ્તક છે 77 00:03:52,210 --> 00:03:55,004 અમે પગલું સ્પષ્ટ કરવા માટે જરૂર નથી પગલું દ્વારા હવે કેવી રીતે તેને શોધવા જાઓ. 78 00:03:55,004 --> 00:03:56,920 અમે સ્પષ્ટ કરવા નથી 3 લીટી પર પાછા જાઓ, 79 00:03:56,920 --> 00:03:58,960 શા માટે આપણે માત્ર બદલે નથી, કહે છે, વધુ સામાન્ય રીતે, 80 00:03:58,960 --> 00:04:01,500 આ માઇક માટે શોધ પુસ્તક ડાબી અડધા. 81 00:04:01,500 --> 00:04:03,960 >> તેનાથી વિપરીત, માઇક હોય તો ખરેખર પાછળથી આ પુસ્તક માં, 82 00:04:03,960 --> 00:04:07,540 શા માટે આપણે માત્ર અવતરણ ચિહ્નો પૂરાં કરવાં શોધ ઉદ્ધત નથી પુસ્તક જમણી અડધા માઇક માટે. 83 00:04:07,540 --> 00:04:11,030 અન્ય શબ્દોમાં, શા માટે આપણે માત્ર નથી સૉર્ટ જાતને કહેતા બિંદુ, 84 00:04:11,030 --> 00:04:13,130 આ માઇક માટે શોધ પુસ્તક સબસેટ 85 00:04:13,130 --> 00:04:16,279 અને અમારી વર્તમાન તેને છોડી અલ્ગોરિધમનો અમને જણાવો 86 00:04:16,279 --> 00:04:18,750 માઇક શોધવા માટે કેવી રીતે પુસ્તક કે ડાબી અડધા. 87 00:04:18,750 --> 00:04:20,750 અન્ય શબ્દોમાં, અમારી અલ્ગોરિધમનો તે શું કામ કરે છે 88 00:04:20,750 --> 00:04:24,670 આ આ જાડાઈ એક ફોન પુસ્તક, જાડાઈ, અથવા બિલકુલ કોઇ જાડાઈ. 89 00:04:24,670 --> 00:04:27,826 તેથી અમે પુનરાવર્તિત કરી શકો છો આ અલ્ગોરિધમનો વ્યાખ્યાયિત કરે છે. 90 00:04:27,826 --> 00:04:29,950 અન્ય શબ્દોમાં, પર અહીં સ્ક્રીન, એક એલ્ગોરિધમ છે 91 00:04:29,950 --> 00:04:33,130 માઇક સ્મિથ માટે શોધ માટે એક ફોન પુસ્તકના પાના વચ્ચે. 92 00:04:33,130 --> 00:04:37,410 તો રેખા 7 અને 10 માં, ચાલો માત્ર બરાબર છે કે કહે છે. 93 00:04:37,410 --> 00:04:40,250 અને હું આ શબ્દ એક ક્ષણ ઉપયોગ પહેલાં, અને ખરેખર, રિકર્ઝન 94 00:04:40,250 --> 00:04:42,450 આ buzzword છે, હવે માટે છે અને તે આ પ્રક્રિયા છે 95 00:04:42,450 --> 00:04:47,210 કોઈક દ્વારા ચક્રીય કંઈક કરી જો તમે પહેલાથી જ છે કે કોડ મદદથી, 96 00:04:47,210 --> 00:04:49,722 અને, ફરી તે ફોન અને ફરી, અને ફરીથી. 97 00:04:49,722 --> 00:04:51,930 હવે તે મહત્વનું હોઈ ચાલે છે અમે અચાનક નીચે કે 98 00:04:51,930 --> 00:04:53,821 બહાર, અને અનંત લાંબા કે નથી. 99 00:04:53,821 --> 00:04:56,070 નહિંતર અમે જઈ રહ્યાં છો ખરેખર એક અનંત લૂપ છે. 100 00:04:56,070 --> 00:04:59,810 પરંતુ અમે આ વિચાર ઉધાર કરી શકો છો જો માતાનો જોવા દો એક પુનરાવર્તનના ફરીથી કંઈક કરી 101 00:04:59,810 --> 00:05:03,600 અને ફરીથી અને ફરીથી, ઉકેલવા માટે મર્જ મારફતે સૉર્ટ સમસ્યા 102 00:05:03,600 --> 00:05:05,900 સૉર્ટ કરો, તમામ વધુ અસરકારક રીતે. 103 00:05:05,900 --> 00:05:06,970 >> તેથી હું તમને સૉર્ટ મર્જ આપે છે. 104 00:05:06,970 --> 00:05:07,920 માતાનો એક નજર કરીએ. 105 00:05:07,920 --> 00:05:10,850 તેથી અહીં સ્યુડોકોડનો સાથે છે અમે સૉર્ટ અમલ કરી શકે છે, જે 106 00:05:10,850 --> 00:05:12,640 મર્જ સૉર્ટ કહેવાય અલ્ગોરિધમનો ઉપયોગ કરીને. 107 00:05:12,640 --> 00:05:13,880 અને તે તદ્દન સરળ આ છે. 108 00:05:13,880 --> 00:05:15,940 N તત્વોના ઇનપુટ પર, અન્ય શબ્દોમાં, તમે છો, તો 109 00:05:15,940 --> 00:05:18,830 n તત્વોના આપેલા અને સંખ્યાઓ અને ઇનપુટ છે અથવા જે અક્ષરો, 110 00:05:18,830 --> 00:05:22,430 તમે n તત્વોના, તો આપવામાં રહ્યાં છો, તો n 2 કરતાં ઓછી છે, માત્ર આવો. 111 00:05:22,430 --> 00:05:22,930 અધિકાર? 112 00:05:22,930 --> 00:05:26,430 એ છે કે, 2 કરતાં ઓછી હોય છે કારણ કે જો એનો અર્થ એ થાય છે કે જે તત્વો મારા યાદી 113 00:05:26,430 --> 00:05:30,446 કદ 0 અથવા 1 ક્યાં છે, અને તે તુચ્છ કિસ્સાઓમાં બંને માં, 114 00:05:30,446 --> 00:05:31,570 યાદી પહેલેથી સૉર્ટ થાય છે. 115 00:05:31,570 --> 00:05:32,810 કોઈ યાદી છે, તો તે છટણી છે. 116 00:05:32,810 --> 00:05:35,185 અને લંબાઈ યાદી હોય તો 1, તે દેખીતી રીતે છટણી છે. 117 00:05:35,185 --> 00:05:38,280 તેથી અલ્ગોરિધમનો માત્ર કરવાની જરૂર છે ખરેખર રસપ્રદ કંઈક, 118 00:05:38,280 --> 00:05:40,870 અમે બે અથવા વધુ હોય તો તત્વો અમને આપવામાં આવે છે. 119 00:05:40,870 --> 00:05:42,440 તેથી આપણે પછી જાદુ જોવા દો. 120 00:05:42,440 --> 00:05:47,500 બાકી તત્વો ડાબી અડધા સૉર્ટ પછી તત્વો જમણી અડધા સૉર્ટ 121 00:05:47,500 --> 00:05:49,640 પછી છટણી અર્ધભાગ મર્જ. 122 00:05:49,640 --> 00:05:52,440 અને વક્રતા મન પ્રકારની શું છે અહીં, હું ખરેખર નથી 123 00:05:52,440 --> 00:05:56,190 તમે કહ્યું છે લાગે હજી સુધી કંઈ, અધિકાર? 124 00:05:56,190 --> 00:05:59,560 હું બધા યાદી આપવામાં આવે છે જણાવ્યું હતું કે કર્યું n તત્વોના, ડાબી અડધા સૉર્ટ 125 00:05:59,560 --> 00:06:01,800 પછી જમણી અડધા પછી છટણી અર્ધભાગ મર્જ, 126 00:06:01,800 --> 00:06:03,840 પરંતુ જ્યાં વાસ્તવિક ગુપ્ત ચટણી છે? 127 00:06:03,840 --> 00:06:05,260 અલ્ગોરિધમનો ક્યાં છે? 128 00:06:05,260 --> 00:06:09,150 વેલ તે બે લીટીઓ કે બહાર વળે પ્રથમ, તત્વો સૉર્ટ ડાબી અડધા, 129 00:06:09,150 --> 00:06:13,970 અને તત્વો સૉર્ટ જમણી અડધા ફરી યાદ આવવું કોલ્સ છે, તેથી વાત કરવા માટે. 130 00:06:13,970 --> 00:06:16,120 >> બધા પછી, આ પર સમય બિંદુ, મારી પાસે 131 00:06:16,120 --> 00:06:18,950 જેની સાથે એલ્ગોરિધમ તત્વો સમગ્ર ટોળું સૉર્ટ? 132 00:06:18,950 --> 00:06:19,450 હા. 133 00:06:19,450 --> 00:06:20,620 તે અહીં છે. 134 00:06:20,620 --> 00:06:25,180 તે સ્ક્રીન પર અહીં છે, અને તેથી હું પગલાંઓ તે જ સેટ કરી શકો છો 135 00:06:25,180 --> 00:06:28,500 ડાબી અડધા સૉર્ટ કરવા માટે, જમણી અડધા હું કરી શકો છો તરીકે. 136 00:06:28,500 --> 00:06:30,420 અને ખરેખર, ફરી, અને ફરીથી. 137 00:06:30,420 --> 00:06:34,210 તેથી અચાનક અથવા અન્ય, અને અમે ટૂંક સમયમાં પડશે મર્જ સૉર્ટ જાદુ આ જુઓ 138 00:06:34,210 --> 00:06:37,967 તે ખૂબ જ અંતિમ જડિત છે રેખા, છટણી અર્ધભાગ મર્જ. 139 00:06:37,967 --> 00:06:39,300 અને તે એકદમ સાહજિક લાગે છે. 140 00:06:39,300 --> 00:06:41,050 તમે બે છિદ્ર લે છે, અને કોઈક તેમને એકસાથે મર્જ, 141 00:06:41,050 --> 00:06:43,260 અને અમે આ જોશો concretely એક ક્ષણ. 142 00:06:43,260 --> 00:06:45,080 >> પરંતુ આ એક સંપૂર્ણ એલ્ગોરિધમ છે. 143 00:06:45,080 --> 00:06:46,640 અને ચાલો બરાબર શા માટે જોવા દો. 144 00:06:46,640 --> 00:06:50,912 વેલ અમે આ જ આપવામાં રહ્યા છો કે જે ધારવું સ્ક્રીન પર અહીં આઠ તત્વો, એક 145 00:06:50,912 --> 00:06:53,120 આઠ દ્વારા, પરંતુ તેઓ છો મોટે ભાગે રેન્ડમ ક્રમમાં. 146 00:06:53,120 --> 00:06:55,320 અને હાથ પર ધ્યેય છે આ તત્વો સૉર્ટ. 147 00:06:55,320 --> 00:06:58,280 વેલ હું વિશે કેવી રીતે જઈ શકે છે ફરીથી, નો ઉપયોગ કરીને તેને કરી, 148 00:06:58,280 --> 00:07:00,407 આ સ્યુડોકોડનો મુજબ સૉર્ટ મર્જ? 149 00:07:00,407 --> 00:07:02,740 અને ફરી, આ મનમાં ઠસાવવું તમારા મન, માત્ર એક ક્ષણ માટે. 150 00:07:02,740 --> 00:07:05,270 પ્રથમ કેસ ખૂબ છે તુચ્છ, તે 2 કરતાં ઓછી છે, તો 151 00:07:05,270 --> 00:07:07,060 માત્ર કરવામાં કોઈ કામ નથી, આવો. 152 00:07:07,060 --> 00:07:09,290 તેથી ખરેખર માત્ર ત્રણ છે પગલાંઓ ખરેખર ધ્યાનમાં રાખવા. 153 00:07:09,290 --> 00:07:11,081 ફરી, અને ફરી, હું છું છે કરવા માંગો છો જઈ 154 00:07:11,081 --> 00:07:13,980 ડાબી અડધા સૉર્ટ કરવા માટે, જમણી અડધા સૉર્ટ 155 00:07:13,980 --> 00:07:15,890 અને પછી એક વખત તેમના બે છિદ્ર છટણી કરવામાં આવે છે 156 00:07:15,890 --> 00:07:18,710 હું તેમને મળીને મર્જ કરવા માંગો છો એક છટણી યાદી માં. 157 00:07:18,710 --> 00:07:19,940 તેથી મન કે રાખો. 158 00:07:19,940 --> 00:07:21,310 >> તેથી અહીં મૂળ યાદી છે. 159 00:07:21,310 --> 00:07:23,510 ચાલો એક તરીકે આ સારવાર દો અરે, અમે શરૂ 160 00:07:23,510 --> 00:07:25,800 સપ્તાહ બે, કે જે છે મેમરી સંલગ્ન બ્લોક. 161 00:07:25,800 --> 00:07:28,480 આ કિસ્સામાં, આઠ સમાવતી નંબરો, પાછળ પાછળ પાછળ છે. 162 00:07:28,480 --> 00:07:30,700 અને હવે મર્જ સૉર્ટ અરજી દો. 163 00:07:30,700 --> 00:07:33,300 તેથી હું પ્રથમ સૉર્ટ કરવા માંગો છો આ યાદી ડાબી અડધા 164 00:07:33,300 --> 00:07:37,370 અને, તેથી, ચાલો 4, 8, 6, અને 2 પર ધ્યાન કેન્દ્રિત. 165 00:07:37,370 --> 00:07:41,000 >> હવે હું વિશે કેવી રીતે જવું નથી 4 કદ યાદી સૉર્ટ? 166 00:07:41,000 --> 00:07:45,990 વેલ હું હવે ધ્યાનમાં હોય ડાબી અડધા ડાબી સૉર્ટ. 167 00:07:45,990 --> 00:07:47,720 ફરીથી, માત્ર એક ક્ષણ માટે રીવાઇન્ડ દો. 168 00:07:47,720 --> 00:07:51,010 સ્યુડોકોડનો આ છે, અને હું આઠ તત્વો આપવામાં છું, 169 00:07:51,010 --> 00:07:53,230 8 દેખીતી રીતે વધારે છે એક કરતાં વધારે અથવા 2 સમાન. 170 00:07:53,230 --> 00:07:54,980 તેથી પ્રથમ કેસ લાગુ પડતી નથી. 171 00:07:54,980 --> 00:07:58,120 જેથી આઠ તત્વો સૉર્ટ, હું પ્રથમ , તત્વો ડાબી અડધા સૉર્ટ 172 00:07:58,120 --> 00:08:01,930 પછી હું પછી હું મર્જ, જમણી અડધા સૉર્ટ બે છટણી અર્ધભાગ, કદ 4 દરેક. 173 00:08:01,930 --> 00:08:02,470 ઠીક છે. 174 00:08:02,470 --> 00:08:07,480 >> તમે માત્ર મારા કહ્યું છે પરંતુ જો, સૉર્ટ હવે 4 કદ છે, જે ડાબી અડધા, 175 00:08:07,480 --> 00:08:09,350 કેવી રીતે હું ડાબી અડધા સૉર્ટ કરો છો? 176 00:08:09,350 --> 00:08:11,430 વેલ હું એક હોય તો ચાર તત્વો ઇનપુટ, 177 00:08:11,430 --> 00:08:14,590 હું પ્રથમ ડાબી સૉર્ટ બે, પછી જમણી બે, 178 00:08:14,590 --> 00:08:16,210 અને પછી હું તેમને મળીને મર્જ. 179 00:08:16,210 --> 00:08:18,700 તેથી ફરી, તે થોડી બની જાય છે મન અહીં રમત વક્રતા, 180 00:08:18,700 --> 00:08:21,450 કારણ કે તમે, પ્રકારની હોય છે તમે આ વાર્તા છે જ્યાં યાદ રાખો કે, 181 00:08:21,450 --> 00:08:23,620 પરંતુ દિવસ ઓવરને અંતે, તત્વો કોઈપણ નંબર આપવામાં આવે છે, 182 00:08:23,620 --> 00:08:25,620 તમે પ્રથમ સૉર્ટ કરવા માંગો છો ડાબી અડધા, પછી જમણી અડધા 183 00:08:25,620 --> 00:08:26,661 પછી તેમને એકસાથે મર્જ. 184 00:08:26,661 --> 00:08:28,630 માતાનો બરાબર તે કરવા માટે શરૂ કરો. 185 00:08:28,630 --> 00:08:30,170 અહીં આઠ તત્વો ઇનપુટ છે. 186 00:08:30,170 --> 00:08:31,910 હવે અમે અહીં ડાબી અડધા શોધી રહ્યાં છે. 187 00:08:31,910 --> 00:08:33,720 હું કેવી રીતે ચાર તત્વો સૉર્ટ કરો છો? 188 00:08:33,720 --> 00:08:35,610 વેલ હું પ્રથમ ડાબી અડધા સૉર્ટ. 189 00:08:35,610 --> 00:08:37,720 હવે કેવી રીતે હું ડાબી અડધા સૉર્ટ કરો છો? 190 00:08:37,720 --> 00:08:39,419 વેલ હું બે તત્વો આપવામાં આવી છે. 191 00:08:39,419 --> 00:08:41,240 તેથી આપણે આ બે તત્વો સૉર્ટ દો. 192 00:08:41,240 --> 00:08:44,540 2 કરતાં વધારે અથવા 2 બરાબર છે, અલબત્ત. 193 00:08:44,540 --> 00:08:46,170 તેથી પ્રથમ કેસ લાગુ પડતી નથી. 194 00:08:46,170 --> 00:08:49,010 >> તેથી હવે હું ડાબી સૉર્ટ હોય આ બે તત્વો અડધા. 195 00:08:49,010 --> 00:08:50,870 ડાબી અડધા, અલબત્ત, માત્ર 4 છે. 196 00:08:50,870 --> 00:08:54,020 તેથી હું કેવી રીતે એક તત્વ યાદી સૉર્ટ કરો છો? 197 00:08:54,020 --> 00:08:57,960 વેલ હવે, કે જે ખાસ આધાર કેસ ઉપર છે, તેથી વાત કરવા માટે, લાગુ પડે છે. 198 00:08:57,960 --> 00:09:01,470 1 કરતાં ઓછી 2 છે, અને મારા યાદી ખરેખર કદ 1 નું છે. 199 00:09:01,470 --> 00:09:02,747 તેથી હું માત્ર આવો. 200 00:09:02,747 --> 00:09:03,580 હું કાંઇ નથી. 201 00:09:03,580 --> 00:09:06,770 અને ખરેખર, હું કર્યું છે તે જોવા કરવામાં આવે છે, 4 પહેલેથી સૉર્ટ થાય છે. 202 00:09:06,770 --> 00:09:09,220 જેમ હું પહેલેથી જ છું અહીં આંશિક સફળ. 203 00:09:09,220 --> 00:09:11,750 >> હવે તે પ્રકારના મૂર્ખ લાગે છે દાવો છે, પરંતુ તે સાચું છે. 204 00:09:11,750 --> 00:09:13,700 4 કદ 1 નું યાદી છે. 205 00:09:13,700 --> 00:09:15,090 તે પહેલાથી જ છટણી છે. 206 00:09:15,090 --> 00:09:16,270 તે ડાબી અડધા છે. 207 00:09:16,270 --> 00:09:18,010 હવે હું જમણી અડધા સૉર્ટ. 208 00:09:18,010 --> 00:09:22,310 મારા ઇનપુટ 8, એક તત્વ છે એ જ રીતે, પહેલેથી જ છટણી. 209 00:09:22,310 --> 00:09:25,170 મૂર્ખ, પણ છે, પરંતુ ફરીથી, આ મૂળભૂત સિદ્ધાંત 210 00:09:25,170 --> 00:09:28,310 ચાલો હવે બીલ્ડ કરવા માટે પરવાનગી રહ્યું છે આ ટોચ પર સફળતાપૂર્વક. 211 00:09:28,310 --> 00:09:32,260 4 હવે, 8 છટણી કરવામાં આવે છે, સૉર્ટ કે છેલ્લા પગલું શું હતું? 212 00:09:32,260 --> 00:09:35,330 તેથી ત્રીજા અને અંતિમ પગલું કોઈપણ સમય તમે એક યાદી, સ્મૃતિ સૉર્ટ કરી રહ્યા છો 213 00:09:35,330 --> 00:09:38,310 , બે છિદ્ર મર્જ હતી ડાબી અને જમણી. 214 00:09:38,310 --> 00:09:39,900 તેથી આપણે બરાબર તે કરવા દો. 215 00:09:39,900 --> 00:09:41,940 મારા ડાબા અડધા, અલબત્ત, 4 છે. 216 00:09:41,940 --> 00:09:43,310 મારી જમણી અડધા 8 છે. 217 00:09:43,310 --> 00:09:44,100 >> તેથી આ કરવા દો. 218 00:09:44,100 --> 00:09:46,410 પ્રથમ હું ફાળવવા માટે જઇ રહ્યો છું કેટલીક વધારાની મેમરી 219 00:09:46,410 --> 00:09:48,680 , હું અહીં પ્રતિનિધિત્વ પડશે કે માત્ર એક ગૌણ એરે તરીકે, 220 00:09:48,680 --> 00:09:49,660 આ ફિટ કરવા માટે પૂરતી મોટી છે. 221 00:09:49,660 --> 00:09:52,243 પરંતુ તમે વિસ્તરે કલ્પના કરી શકો છો કે લંબચોરસ સમગ્ર લંબાઈ, 222 00:09:52,243 --> 00:09:53,290 અમે વધુ પાછળથી જરૂર છે. 223 00:09:53,290 --> 00:09:58,440 હું 4 લેવા અને 8, અને મર્જ કેવી રીતે સાથે મળીને કદ 1 તે બે યાદીઓ? 224 00:09:58,440 --> 00:10:00,270 અહીં પણ, ખૂબ સરળ. 225 00:10:00,270 --> 00:10:03,300 4 પછી, પ્રથમ આવે છે 8 આવે છે. 226 00:10:03,300 --> 00:10:07,130 હું સૉર્ટ કરવા માંગો છો, તો કારણ કે ડાબી અડધા, પછી જમણી અડધા 227 00:10:07,130 --> 00:10:09,900 અને પછી તે બે છિદ્ર મર્જ તેની સાથે, ક્રમમાં, 228 00:10:09,900 --> 00:10:11,940 4 પછી, પ્રથમ આવે છે 8 આવે છે. 229 00:10:11,940 --> 00:10:15,810 >> તેથી અમે પણ પ્રગતિ કરી હોય તેમ જણાય છે હું કોઇ વાસ્તવિક કાર્ય કર્યું નથી છતાં. 230 00:10:15,810 --> 00:10:17,800 અમે વાર્તા છે પરંતુ જ્યાં યાદ કરે છે. 231 00:10:17,800 --> 00:10:19,360 અમે મૂળ આઠ તત્વો લીધો હતો. 232 00:10:19,360 --> 00:10:21,480 અમે 4 છે, જે ડાબી અડધા સૉર્ટ. 233 00:10:21,480 --> 00:10:24,450 તો પછી અમે ડાબી અડધા સૉર્ટ 2 હતી, જે ડાબી અડધા છે. 234 00:10:24,450 --> 00:10:25,270 અને અહીં અમે જાઓ. 235 00:10:25,270 --> 00:10:26,920 અમે તે પગલું પૂર્ણ કરી. 236 00:10:26,920 --> 00:10:29,930 >> અમે છટણી કરી છે તેથી જો આપણે હવે 2 અડધા બાકી 237 00:10:29,930 --> 00:10:32,130 2 જમણી અડધા સૉર્ટ હોય છે. 238 00:10:32,130 --> 00:10:35,710 તેથી 2 જમણી અડધા છે અહીં આ બે કિંમતો, 6 અને 2. 239 00:10:35,710 --> 00:10:40,620 તેથી હવે કદ એક ઇનપુટ લેવા દો 2, અને પછી ડાબી અડધા સૉર્ટ કરો, અને 240 00:10:40,620 --> 00:10:42,610 જમણી અડધા, અને પછી તેમને મળીને મર્જ. 241 00:10:42,610 --> 00:10:45,722 વેલ હું કેવી રીતે કદ એક યાદી સૉર્ટ નથી 1, માત્ર સંખ્યા 6 સમાવતી? 242 00:10:45,722 --> 00:10:46,430 હું પહેલેથી જ કરી રહ્યો છું. 243 00:10:46,430 --> 00:10:48,680 કદ 1 છે કે જે યાદી સૉર્ટ થાય છે. 244 00:10:48,680 --> 00:10:52,140 >> હું અન્ય યાદી સૉર્ટ કેવી રીતે 1 કદ, કહેવાતા અધિકાર અડધા. 245 00:10:52,140 --> 00:10:54,690 વેલ તે, પણ, પહેલેથી સૉર્ટ થાય છે. 246 00:10:54,690 --> 00:10:56,190 સંખ્યા 2 એકલા છે. 247 00:10:56,190 --> 00:11:00,160 તેથી હવે હું બે છિદ્ર હોય છે, ડાબી અને અધિકાર, હું તેમને મળીને મર્જ કરવાની જરૂર છે. 248 00:11:00,160 --> 00:11:01,800 મને મારી જાતને કેટલાક વધારાના જગ્યા આપી દો. 249 00:11:01,800 --> 00:11:05,580 અને, ત્યાં 2 મૂકો પછી 6 ત્યાં, ત્યાં 250 00:11:05,580 --> 00:11:10,740 કે યાદી છટણી, ડાબી અને જમણી અને છેવટે, તેને મળીને મર્જ. 251 00:11:10,740 --> 00:11:12,160 તેથી હું થોડી વધુ સારી આકાર છું. 252 00:11:12,160 --> 00:11:16,250 હું કર્યું કારણ કે છું સ્પષ્ટ 4, 8, 2, 6 હું માંગો છો તે અંતિમ ક્રમ નથી. 253 00:11:16,250 --> 00:11:20,640 પરંતુ હું હવે, કે 2 કદ બે યાદીઓ છે બંને અનુક્રમે છટણી કરવામાં આવી છે. 254 00:11:20,640 --> 00:11:24,580 તેથી હવે તમે તમારા મન માં રીવાઇન્ડ જો આંખ, જ્યાં છે કે અમને છોડી હતી? 255 00:11:24,580 --> 00:11:28,520 હું પછી આઠ તત્વો સાથે શરૂ હું 4 ડાબી અડધા સુધી નીચે whittled 256 00:11:28,520 --> 00:11:31,386 પછી 2 ડાબી અડધા, અને પછી 2 જમણી અડધા, 257 00:11:31,386 --> 00:11:34,510 હું ડાબી છટણી, એના પરિણામ રૂપે, સમાપ્ત 2 અડધા, અને 2 જમણી અડધા 258 00:11:34,510 --> 00:11:37,800 જેથી ત્રીજી અને અંતિમ પગલું અહીં શું છે? 259 00:11:37,800 --> 00:11:41,290 હું મળીને મર્જ છે 2 કદ બે યાદીઓ. 260 00:11:41,290 --> 00:11:42,040 તેથી આપણે આગળ જવા દો. 261 00:11:42,040 --> 00:11:43,940 અને અહીં સ્ક્રીન પર, આપી મને કેટલીક વધારાની મેમરી 262 00:11:43,940 --> 00:11:47,170 જોકે ટેકનિકલી, હું કર્યું કે નોટિસ ખાલી જગ્યા ઉપર એક સમગ્ર ટોળું મળી 263 00:11:47,170 --> 00:11:47,670 ત્યાં. 264 00:11:47,670 --> 00:11:50,044 હું ખાસ કરીને પ્રયત્ન કરવા માંગો છો, તો કાર્યક્ષમ જગ્યા મુજબના, 265 00:11:50,044 --> 00:11:52,960 હું માત્ર તત્વો ખસેડવાની શરૂ કરી શકે છે આગળ અને પાછળ, ઉપર અને નીચે. 266 00:11:52,960 --> 00:11:55,460 પરંતુ માત્ર દ્રશ્ય ચોકસાઈ માટે, હું તેને નીચે નીચે મૂકી જાઉં છું 267 00:11:55,460 --> 00:11:56,800 સરસ અને સ્વચ્છ વસ્તુઓ રાખવા. 268 00:11:56,800 --> 00:11:58,150 >> તેથી હું 2 કદ બે યાદીઓ મળી છે. 269 00:11:58,150 --> 00:11:59,770 પ્રથમ યાદી 4 અને 8 છે. 270 00:11:59,770 --> 00:12:01,500 બીજી યાદી 2 અને 6 છે. 271 00:12:01,500 --> 00:12:03,950 માતાનો તે મર્જ કરો સાથે મળીને ક્રમમાં. 272 00:12:03,950 --> 00:12:09,910 2, અલબત્ત, પ્રથમ આવે છે પછી 4, પછી 6, પછી 8. 273 00:12:09,910 --> 00:12:12,560 અને હવે અમે મળતું હોય તેમ જણાય ક્યાંક રસપ્રદ છે. 274 00:12:12,560 --> 00:12:15,720 ના હવે હું સૉર્ટ કર્યું અડધા યાદી, અને સાંયોગિક, તે 275 00:12:15,720 --> 00:12:18,650 બધા બેકી ક્રમાંકો, પરંતુ તે ખરેખર, માત્ર એક સંયોગ છે. 276 00:12:18,650 --> 00:12:22,220 અને હવે હું ડાબી ઉકેલ છે અડધા, તે 2, 4, 6, અને 8 ની છે કે જેથી. 277 00:12:22,220 --> 00:12:23,430 કંઈ હુકમ બહાર છે. 278 00:12:23,430 --> 00:12:24,620 તે પ્રગતિ જેવી લાગે છે. 279 00:12:24,620 --> 00:12:26,650 >> હું દીધું હવે તેને લાગે છે હવે કાયમ વાત કરવામાં આવી, 280 00:12:26,650 --> 00:12:29,850 તેથી શું આ તો જોઈ શકાય રહે છે અલ્ગોરિધમનો ખરેખર, વધુ કાર્યક્ષમ છે. 281 00:12:29,850 --> 00:12:31,766 પરંતુ અમે પસાર થઇ રહ્યાં તે સુપર પદ્ધતિસરની. 282 00:12:31,766 --> 00:12:34,060 કોમ્પ્યુટર, અલબત્ત, કે જેમ તે શું કરશે. 283 00:12:34,060 --> 00:12:34,840 તેથી અમે ક્યાં છે? 284 00:12:34,840 --> 00:12:36,180 અમે આઠ તત્વો સાથે શરૂઆત કરી હતી. 285 00:12:36,180 --> 00:12:37,840 હું 4 ડાબી અડધા સૉર્ટ. 286 00:12:37,840 --> 00:12:39,290 હું સાથે કરવામાં લાગે છે. 287 00:12:39,290 --> 00:12:42,535 તેથી હવે આગામી પગલું છે 4 જમણી અડધા સૉર્ટ. 288 00:12:42,535 --> 00:12:44,410 અને આ ભાગ અમે જઈ શકે છે થોડી વધુ મારફતે 289 00:12:44,410 --> 00:12:47,140 ઝડપથી તમે છો તેમ છતાં માત્ર રીવાઇન્ડ અથવા વિરામ માટે આપનું સ્વાગત છે 290 00:12:47,140 --> 00:12:49,910 તે મારફતે લાગે તમારા પોતાના ગતિ છે, પરંતુ શું 291 00:12:49,910 --> 00:12:53,290 અમે હવે એક તક છે ચાર પર ચોક્કસ જ અલ્ગોરિધમનો કરવા 292 00:12:53,290 --> 00:12:54,380 વિવિધ નંબરો. 293 00:12:54,380 --> 00:12:57,740 >> તેથી આપણે આગળ જવા દો અને પર ધ્યાન કેન્દ્રિત અમે અહીં છે, કે જે જમણી અડધા. 294 00:12:57,740 --> 00:13:01,260 કે ડાબી અડધા જમણી અડધા છે, અને હવે 295 00:13:01,260 --> 00:13:04,560 ડાબી ડાબી અડધા કે જમણી અડધા અડધા, 296 00:13:04,560 --> 00:13:08,030 અને હું કદ એક યાદી સૉર્ટ કેવી રીતે 1 માત્ર નંબર 1 સમાવતી? 297 00:13:08,030 --> 00:13:09,030 તે પહેલાથી જ થાય છે. 298 00:13:09,030 --> 00:13:11,830 હું એક યાદી માટે જ કેવી રીતે કરવું માત્ર 7 સમાવતી કદ 1 છે? 299 00:13:11,830 --> 00:13:12,840 તે પહેલાથી જ થાય છે. 300 00:13:12,840 --> 00:13:16,790 તો પછી આ અડધા ત્રણ પગલું આ બે તત્વો મર્જ કરવા છે 301 00:13:16,790 --> 00:13:20,889 કદ 2, 1 અને 7 ની નવી યાદી માં. 302 00:13:20,889 --> 00:13:23,180 બધા થાય છે તેમ લાગતું નથી તે ખૂબ રસપ્રદ કામ કરે છે. 303 00:13:23,180 --> 00:13:24,346 આગામી શું થાય છે તે જોવા દો. 304 00:13:24,346 --> 00:13:29,210 હું માત્ર ડાબી અડધા સૉર્ટ મારા મૂળ ઇનપુટ જમણી અડધા. 305 00:13:29,210 --> 00:13:32,360 હવે જમણી પ્રકાર દો 5 અને 3 સમાવે છે કે જે અડધા. 306 00:13:32,360 --> 00:13:35,740 ફરીથી ડાબી પર નજર અડધા છટણી, જમણી અડધા સૉર્ટ, 307 00:13:35,740 --> 00:13:39,120 અને સાથે મળીને તે બે મર્જ કેટલીક વધારાની જગ્યા માં, 308 00:13:39,120 --> 00:13:41,670 3 પછી, પ્રથમ આવે છે 5 આવે છે. 309 00:13:41,670 --> 00:13:46,190 અને તેથી હવે, આપણે સૉર્ટ છે જમણી અડધા ડાબી અડધા 310 00:13:46,190 --> 00:13:49,420 મૂળ સમસ્યા છે, અને જમણી અડધા જમણી અડધા 311 00:13:49,420 --> 00:13:50,800 મૂળ સમસ્યા છે. 312 00:13:50,800 --> 00:13:52,480 ત્રીજી અને અંતિમ પગલું શું છે? 313 00:13:52,480 --> 00:13:54,854 સાથે મળીને તે બે છિદ્ર મર્જ કરવા. 314 00:13:54,854 --> 00:13:57,020 તેથી મને મારી જાતને કેટલાક વિચાર કરીએ ફરી વધારાની જગ્યા છે, પરંતુ, હું 315 00:13:57,020 --> 00:13:58,699 કે ફાજલ જગ્યા ઉપર ઉપયોગ કરી શકે છે. 316 00:13:58,699 --> 00:14:00,490 પરંતુ અમે રાખવા જઈ રહ્યાં છો દૃષ્ટિની તે સરળ છે. 317 00:14:00,490 --> 00:14:07,070 મને હવે 1 માં મર્જ, અને પછી 3, અને પછી 5, અને પછી 7. 318 00:14:07,070 --> 00:14:10,740 ત્યાં હવે મને છોડીને મૂળ સમસ્યા જમણી અડધા 319 00:14:10,740 --> 00:14:12,840 કે સંપૂર્ણપણે છટણી છે. 320 00:14:12,840 --> 00:14:13,662 >> તેથી શું રહે? 321 00:14:13,662 --> 00:14:16,120 હું કહેતો રહું મને લાગે છે ફરી, અને ફરીથી એ જ વસ્તુઓ 322 00:14:16,120 --> 00:14:18,700 પરંતુ તે પ્રતિબિંબીત છે અમે રિકર્ઝન ઉપયોગ કરી રહ્યાં છો કે હકીકત. 323 00:14:18,700 --> 00:14:21,050 એક ઉપયોગ પ્રક્રિયા ફરી, અને ફરીથી અલ્ગોરિધમનો 324 00:14:21,050 --> 00:14:23,940 નાના ઉપગણો પર મૂળ સમસ્યા નથી. 325 00:14:23,940 --> 00:14:27,580 તેથી હવે હું ડાબી ઉકેલ છે મૂળ સમસ્યા અડધા. 326 00:14:27,580 --> 00:14:30,847 હું અધિકાર છટણી અડધા છે મૂળ સમસ્યા છે. 327 00:14:30,847 --> 00:14:32,180 ત્રીજી અને અંતિમ પગલું શું છે? 328 00:14:32,180 --> 00:14:33,590 ઓહ, તે મર્જ છે. 329 00:14:33,590 --> 00:14:34,480 તેથી આપણે તે કરવા દો. 330 00:14:34,480 --> 00:14:36,420 ચાલો કેટલાક વધારાના ફાળવી દો મેમરી, પરંતુ મારા દેવ, અમે 331 00:14:36,420 --> 00:14:37,503 હવે ગમે ત્યાં મૂકી શકે છે. 332 00:14:37,503 --> 00:14:40,356 અમે ખૂબ જ જગ્યા ઉપલબ્ધ છે અમને, પરંતુ અમે તે સરળ રાખવા પડશે. 333 00:14:40,356 --> 00:14:42,730 તેના બદલે પાછા જવાનું અને આગળ અમારા મૂળ મેમરી સાથે, 334 00:14:42,730 --> 00:14:44,480 માત્ર તે કરી દો દૃષ્ટિની અહીં નીચે, 335 00:14:44,480 --> 00:14:47,240 મર્જ પૂર્ણ થાય ડાબી અડધા અને જમણી અડધા. 336 00:14:47,240 --> 00:14:49,279 >> મર્જ દ્વારા તેથી, હું શું કરવાની જરૂર છે? 337 00:14:49,279 --> 00:14:50,820 હું ક્રમમાં તત્વો લેવા માંગો છો. 338 00:14:50,820 --> 00:14:53,230 તેથી ડાબી અડધા જોઈ, હું પ્રથમ નંબર 2 છે જુઓ. 339 00:14:53,230 --> 00:14:55,230 હું જમણી અડધા જુઓ, હું પ્રથમ નંબર જોઈ 340 00:14:55,230 --> 00:14:58,290 તેથી દેખીતી રીતે, 1 છે, જે નંબર, હું બહાર રાખવી કરવા માંગો છો 341 00:14:58,290 --> 00:15:00,430 અને મારા અંતિમ યાદીમાં પહેલી રાખવી? 342 00:15:00,430 --> 00:15:01,449 અલબત્ત, 1. 343 00:15:01,449 --> 00:15:02,990 હવે હું તે જ પ્રશ્ન પૂછી શકો છો. 344 00:15:02,990 --> 00:15:05,040 ડાબી અડધા ભાગ પર, હું કર્યું હજુ પણ નંબર 2 મળી. 345 00:15:05,040 --> 00:15:07,490 જમણી અડધા પર, હું નંબર 3 મળી છે. 346 00:15:07,490 --> 00:15:08,930 જે એક હું પસંદ કરવા માંગો છો? 347 00:15:08,930 --> 00:15:11,760 અલબત્ત, નંબર 2 અને હવે ઉમેદવારો નોટિસ 348 00:15:11,760 --> 00:15:13,620 જમણી બાજુ પર ડાબી, 3 4 છે. 349 00:15:13,620 --> 00:15:15,020 માતાનો, અલબત્ત, 3 પસંદ કરો. 350 00:15:15,020 --> 00:15:18,020 હવે ઉમેદવારો 4 પર છે જમણી બાજુ પર ડાબી, 5. 351 00:15:18,020 --> 00:15:19,460 અમે, અલબત્ત, 4 પસંદ કરો. 352 00:15:19,460 --> 00:15:21,240 જમણી બાજુ પર ડાબી, 5 6. 353 00:15:21,240 --> 00:15:22,730 અમે, અલબત્ત, 5 પસંદ કરો. 354 00:15:22,730 --> 00:15:25,020 જમણી બાજુ પર ડાબી, 7 6. 355 00:15:25,020 --> 00:15:29,320 અમે 6 પસંદ કરો, અને પછી અમે 7 પસંદ કરો, અને પછી અમે 8 પસંદ કરો. 356 00:15:29,320 --> 00:15:30,100 વોઇલા Query. 357 00:15:30,100 --> 00:15:34,370 >> શબ્દો તેથી એક વિશાળ સંખ્યા પછી, અમે આઠ તત્વો આ યાદી ઉકેલ છે 358 00:15:34,370 --> 00:15:38,450 આઠ દ્વારા એક યાદી માં, કે, દરેક પગલું સાથે વધતી છે 359 00:15:38,450 --> 00:15:40,850 પરંતુ કેટલી વખત કર્યું તે કરવા માટે લે છે. 360 00:15:40,850 --> 00:15:43,190 વેલ હું ઇરાદાપૂર્વક કર્યું pictorially નાખ્યો વસ્તુઓ બહાર 361 00:15:43,190 --> 00:15:46,330 અહીં, કે જેથી અમે કરી શકો છો પ્રકારની જુઓ અથવા વિભાગ કદર 362 00:15:46,330 --> 00:15:49,060 વિજય કે શું થઈ રહ્યું કરવામાં આવી છે. 363 00:15:49,060 --> 00:15:52,830 >> તમે પગલે પર પાછા જોવા ખરેખર તો, હું આ ડોટેડ લાઇન તમામ છોડી દીધું છે 364 00:15:52,830 --> 00:15:55,660 સ્થળ ધારકો, તમે આ કરી શકો છો, પ્રકારની વિપરીત ક્રમમાં, જુઓ, 365 00:15:55,660 --> 00:15:58,800 તમે પ્રકારની પાછા જોવા હોય તો ઇતિહાસ હવે, મારી મૂળ યાદી 366 00:15:58,800 --> 00:16:00,250 8 કદ, અલબત્ત, છે. 367 00:16:00,250 --> 00:16:03,480 અને પછી પહેલાં, હું હતો 4 કદ બે યાદીઓ સાથે વ્યવહાર, 368 00:16:03,480 --> 00:16:08,400 અને પછી 2 કદ ચાર યાદીઓ, અને પછી કદ 1 નું આઠ યાદીઓ. 369 00:16:08,400 --> 00:16:10,151 >> તેથી આ શું કરે છે, પ્રકારની તમને યાદ? 370 00:16:10,151 --> 00:16:11,858 વેલ, ખરેખર, કોઈપણ અમે કરેલા ગાણિતીક નિયમો 371 00:16:11,858 --> 00:16:14,430 આમ અત્યાર સુધી જોવામાં જ્યાં અમે ભાગાકાર, અને ભાગાકાર, અને વિભાજન, 372 00:16:14,430 --> 00:16:19,500 ફરીથી વસ્તુઓ કર્યા રાખવા, અને ફરીથી, આ સામાન્ય વિચાર પરિણમે છે. 373 00:16:19,500 --> 00:16:23,100 અને તેથી કંઈક છે લઘુગુણકીય અહીં ચાલે. 374 00:16:23,100 --> 00:16:26,790 અને તે n ના તદ્દન લોગ, પરંતુ નથી એક લઘુગુણકીય ઘટક છે 375 00:16:26,790 --> 00:16:28,280 અમે હમણાં જ કર્યું છે તે છે. 376 00:16:28,280 --> 00:16:31,570 >> હવે તે ખરેખર છે કે કેવી રીતે વિચાર કરીએ. 377 00:16:31,570 --> 00:16:34,481 તેથી ફરી, એન લોગ હતી એક મહાન ચાલી સમય, 378 00:16:34,481 --> 00:16:36,980 અમે કંઈક કર્યું ત્યારે દ્વિસંગી શોધ, અમે હવે તે કહે છે, 379 00:16:36,980 --> 00:16:40,090 આ વિભાજીત અને જીતી વ્યૂહરચના જે મારફતે અમે માઇક સ્મિથ જોવા મળે છે. 380 00:16:40,090 --> 00:16:41,020 હવે ટેકનિકલી. 381 00:16:41,020 --> 00:16:43,640 તે પણ, એ લોગ આધાર 2 છે સૌથી વધુ ગણિત વર્ગો છતાં, 382 00:16:43,640 --> 00:16:45,770 10 સામાન્ય રીતે તમે ધારે છે કે આધાર છે. 383 00:16:45,770 --> 00:16:48,940 પરંતુ કમ્પ્યૂટર વૈજ્ઞાનિકો લગભગ હંમેશા લાગે છે અને આધાર 2 દ્રષ્ટિએ વાત, 384 00:16:48,940 --> 00:16:52,569 તેથી અમે સામાન્ય રીતે ફક્ત લોગ કહે n એ, તેના બદલે n ના લોગ આધાર 2, 385 00:16:52,569 --> 00:16:55,110 પરંતુ તેઓ બરાબર એક અને છો કમ્પ્યુટર વિશ્વમાં જ 386 00:16:55,110 --> 00:16:57,234 વિજ્ઞાન, અને એક કોરે, સતત પરિબળ છે 387 00:16:57,234 --> 00:17:01,070 બે વચ્ચે તફાવત છે, તે જેથી વધુ ઔપચારિક કારણો માટે, કોઈપણ રીતે વિવાદાસ્પદ. 388 00:17:01,070 --> 00:17:04,520 >> પરંતુ હવે માટે, અમે શું કાળજી વિશે આ ઉદાહરણ છે. 389 00:17:04,520 --> 00:17:08,520 તેથી આપણે ઉદાહરણ દ્વારા સાબિત ન દો, પરંતુ ઓછામાં ઓછા નંબરો એક ઉદાહરણ ઉપયોગ 390 00:17:08,520 --> 00:17:10,730 હાથ પર એક સેનીટી ચેક તરીકે, જો તમે કરશે. 391 00:17:10,730 --> 00:17:14,510 તેથી અગાઉ ફોર્મ્યુલા લોગ આધાર હતો N ના 2, પરંતુ આ કિસ્સામાં n છે. 392 00:17:14,510 --> 00:17:18,526 હું એ મૂળ નંબરો હતી, કે 8 મૂળ સંખ્યા ખાસ. 393 00:17:18,526 --> 00:17:20,359 હવે તે થોડી રહી છે જ્યારે પણ હું છું ખૂબ 394 00:17:20,359 --> 00:17:25,300 ખાતરી કરો કે લોગ આધાર 2 8 3 છે કિંમત, 395 00:17:25,300 --> 00:17:29,630 અને ખરેખર, તે શું છે તે વિશે સરસ છે 3 કે વખત બરાબર સંખ્યા છે 396 00:17:29,630 --> 00:17:33,320 તમે યાદી વિભાજિત કરી શકો છો કે ફરી, અને ફરીથી લંબાઈ 8, 397 00:17:33,320 --> 00:17:36,160 અને ફરી, તો તમે છોડી રહ્યાં છો ત્યાં સુધી માત્ર કદ 1 યાદી છે. 398 00:17:36,160 --> 00:17:36,660 અધિકાર? 399 00:17:36,660 --> 00:17:40,790 8, 4 જાય 2 જાય છે, 1 જાય છે, અને તે છે 400 00:17:40,790 --> 00:17:43,470 બરાબર છે કે પ્રતિબિંબીત ચિત્ર અમે માત્ર એક ક્ષણ પહેલા હતી. 401 00:17:43,470 --> 00:17:47,160 તેથી થોડી સેનીટી જ્યાં તરીકે તપાસો લઘુગણક ખરેખર સામેલ છે. 402 00:17:47,160 --> 00:17:50,180 >> તેથી હવે, બીજું શું અહીં સામેલ છે? એ. 403 00:17:50,180 --> 00:17:53,440 તેથી દરેક નોંધ્યું છે કે સમય હું યાદી વિભાજિત 404 00:17:53,440 --> 00:17:58,260 ઇતિહાસમાં રિવર્સ ક્રમમાં છે, તેમ છતાં અહીં, હું હજુ પણ એ વસ્તુઓ કરી હતી. 405 00:17:58,260 --> 00:18:02,320 તે મર્જ પગલું છે કે જે જરૂરી હું નંબરો દર એક સ્પર્શ 406 00:18:02,320 --> 00:18:05,060 માં સ્લાઇડ કરવા માટે તેના યોગ્ય સ્થાન. 407 00:18:05,060 --> 00:18:10,760 તેથી ભલે આ ઊંચાઈ રેખાકૃતિ, એ અથવા 3 કદ લોગ n છે 408 00:18:10,760 --> 00:18:13,860 ખાસ કરીને, અન્ય શબ્દોમાં, હું અહીં ત્રણ વિભાગોમાં હતી. 409 00:18:13,860 --> 00:18:18,800 કેટલી કામ હું આડા કરી હતી આ ચાર્ટ દરેક સમય સાથે? 410 00:18:18,800 --> 00:18:21,110 >> વેલ, હું n પગલાંઓ કર્યું હું કર્યું હોય તો, કારણ કે કામ 411 00:18:21,110 --> 00:18:24,080 ચાર તત્વો અને ચાર તત્વો મળી અને હું તેમને મળીને મર્જ કરવાની જરૂર છે. 412 00:18:24,080 --> 00:18:26,040 હું મારફતે જવા માટે જરૂર છે આ ચાર અને આ ચાર, 413 00:18:26,040 --> 00:18:28,123 આખરે તેમને મર્જ કરવા આઠ તત્વો માં. 414 00:18:28,123 --> 00:18:32,182 તેનાથી વિપરીત જો હું આઠ આંગળીઓ મળી છે હું નથી, કે જે અહિ, અને આઠ 415 00:18:32,182 --> 00:18:34,390 fingers-- sorry-- હું કર્યું હોય તો અહીં ચાર આંગળીઓ મળી 416 00:18:34,390 --> 00:18:37,380 હું ચાર આંગળીઓ જે અહીં, હું શું છે, કે જે 417 00:18:37,380 --> 00:18:40,590 પછી તે જ છે ઉદાહરણ તરીકે પહેલાં, હું શું જો 418 00:18:40,590 --> 00:18:44,010 છતાં આઠ આંગળીઓ હું પ્રકારની કરી શકો છો, કે જે કુલ. 419 00:18:44,010 --> 00:18:47,950 હું બરાબર, અહીં કરી શકો છો પછી હું ચોક્કસપણે કરી શકો છો 420 00:18:47,950 --> 00:18:50,370 આ યાદીઓની બધા મર્જ સાથે મળીને કદ 1 નું. 421 00:18:50,370 --> 00:18:54,050 પરંતુ હું ચોક્કસપણે જોવા માટે હોય છે દરેક તત્વ પર ચોક્કસ રીતે એક વખત. 422 00:18:54,050 --> 00:18:59,640 તેથી આ પ્રક્રિયા ઊંચાઇ, લોગ n છે આ પ્રક્રિયા પહોળાઈ, તેથી વાત કરવા માટે 423 00:18:59,640 --> 00:19:02,490 તેથી અમે શું લાગે છે, એ છે આખરે, છે, હોય 424 00:19:02,490 --> 00:19:06,470 માપ n વખત ચાલી રહેલ સમય n લોગ. 425 00:19:06,470 --> 00:19:08,977 >> બીજા શબ્દોમાં કહીએ તો, અમે વિભાજિત આ યાદી, લોગ n વખત, 426 00:19:08,977 --> 00:19:11,810 પરંતુ અમે તે કર્યું દર વખતે, અમે હતી તત્વો દર એક સ્પર્શ 427 00:19:11,810 --> 00:19:13,560 તેમને મર્જ કરવા માટે બધા સાથે મળીને, જે 428 00:19:13,560 --> 00:19:18,120 પગલું n એ, તેથી અમે n વખત લોગ એન હતી, અથવા કમ્પ્યુટર સાયન્ટિસ્ટ કહે છે કે, 429 00:19:18,120 --> 00:19:20,380 asymptotically, જે મોટા શબ્દ પણ હોઈ શકે છે 430 00:19:20,380 --> 00:19:22,810 ઉપલા વર્ણન કરવા માટે ચાલતી સમય પર બંધાયેલ છે, 431 00:19:22,810 --> 00:19:28,010 અમે એક મોટી ઓ ચાલી રહ્યું છે લોગ n એ સમય છે, તેથી વાત કરવા માટે. 432 00:19:28,010 --> 00:19:31,510 >> હવે આ છે, કારણ કે નોંધપાત્ર છે ચાલી રહેલ વખત શું હતા યાદ 433 00:19:31,510 --> 00:19:34,120 બબલ સૉર્ટ કરો, અને પસંદગી સાથે સૉર્ટ કરો, અને નિવેશ સૉર્ટ કરો, 434 00:19:34,120 --> 00:19:38,200 અને અસ્તિત્વમાં છે કે જે પણ થોડા અન્ય એ આપણે હતા જ્યાં હતી સ્ક્વેર્ડ. 435 00:19:38,200 --> 00:19:39,990 અને તમે પ્રકારની, અહીં આ જોઈ શકો છો. 436 00:19:39,990 --> 00:19:45,720 સ્ક્વેર્ડ n છે, તો દેખીતી રીતે એ વખત છે એ છે, પરંતુ અહીં અમે હોય એ વખત લોગ એન, 437 00:19:45,720 --> 00:19:48,770 અને અમે પહેલાથી જ સપ્તાહ પરથી ખબર શૂન્ય, કે લોગ n છે, લઘુગુણકીય, 438 00:19:48,770 --> 00:19:50,550 કંઈક રેખીય કરતાં વધુ સારી છે. 439 00:19:50,550 --> 00:19:52,930 તમામ કર્યા પછી, ચિત્ર યાદ લાલ અને પીળા સાથે 440 00:19:52,930 --> 00:19:56,500 અમે દોર્યું છે અને લીલા રેખાઓ, લીલા લઘુગુણકીય વાક્ય ઘણી ઓછી હતી. 441 00:19:56,500 --> 00:20:00,920 અને તેથી, વધુ સારી અને ઝડપી સીધા પીળા અને લાલ લાઇન કરતા, 442 00:20:00,920 --> 00:20:05,900 n વખત ખરેખર, લોગ એન, સારી એ વખત કરતાં n એ, અથવા n સ્ક્વેર્ડ. 443 00:20:05,900 --> 00:20:09,110 >> તેથી અમે હોય એવું લાગે છે અલ્ગોરિધમનો મર્જ ઓળખી 444 00:20:09,110 --> 00:20:11,870 સૉર્ટ ખૂબ ચાલે છે ઝડપી સમય, અને ખરેખર, 445 00:20:11,870 --> 00:20:16,560 કે શા માટે છે, અગાઉ આ અઠવાડિયે, જ્યારે અમે બબલ વચ્ચે સ્પર્ધા જોવા મળી હતી 446 00:20:16,560 --> 00:20:20,750 સૉર્ટ કરો, પસંદગી સૉર્ટ કરો, અને મર્જ સૉર્ટ કરો, સૉર્ટ ખરેખર, ખરેખર જીતી મર્જ. 447 00:20:20,750 --> 00:20:23,660 અને ખરેખર, અમે પણ રાહ ન હતી બબલ વર્ગીકરણ અને સમાવેશ પસંદગી સૉર્ટ માટે 448 00:20:23,660 --> 00:20:24,790 સમાપ્ત કરવા. 449 00:20:24,790 --> 00:20:27,410 >> હવે એક અન્ય પાસ લેવા દો આ સમયે, સહેજ વધુ 450 00:20:27,410 --> 00:20:31,030 ઔપચારિક પરિપ્રેક્ષ્ય, જસ્ટ કેસ, આ સારી રેસોનેટ 451 00:20:31,030 --> 00:20:33,380 કે ઉચ્ચ સ્તર ચર્ચા કરતાં. 452 00:20:33,380 --> 00:20:34,880 તેથી અહીં અલ્ગોરિધમનો ફરી છે. 453 00:20:34,880 --> 00:20:36,770 માતાનો જાતને પૂછો, શું ચાલી રહેલ સમય 454 00:20:36,770 --> 00:20:39,287 આ વિવિધ પગલાંઓ ગાણિતીક નિયમો છે? 455 00:20:39,287 --> 00:20:41,620 માતાનો પ્રથમ વહેંચી દો કેસ અને બીજા કિસ્સામાં. 456 00:20:41,620 --> 00:20:46,280 જો કિસ્સામાં અને જો બીજું, N 2 કરતાં ઓછી છે, માત્ર આવો. 457 00:20:46,280 --> 00:20:47,580 સતત સમય જેવી લાગે છે. 458 00:20:47,580 --> 00:20:50,970 તે બે પગલાંઓ જેમ, પ્રકારની છે, N 2 કરતાં ઓછી છે, તો પછી આવો. 459 00:20:50,970 --> 00:20:54,580 પરંતુ અમે સોમવાર પર જણાવ્યું હતું કે, સતત સમય, અથવા 1 હે મોટા, 460 00:20:54,580 --> 00:20:57,130 બે પગલાંઓ, ત્રણ હોઈ શકે છે પગલાંઓ, પણ 1000 પગલાંઓ. 461 00:20:57,130 --> 00:20:59,870 શું બાબતો તે છે કે છે પગલાંઓ સતત નંબર. 462 00:20:59,870 --> 00:21:03,240 તેથી પીળા સ્યુડોકોડનો પ્રકાશિત અહીં, અમે તે કહી શકશો, ચાલે છે 463 00:21:03,240 --> 00:21:04,490 સતત સમય. 464 00:21:04,490 --> 00:21:06,780 જેથી વધુ ઔપચારિક અને અમે આ જઈ રહ્યાં છો 465 00:21:06,780 --> 00:21:09,910 હદ હશે જે અમે n ના ટી now-- આ અધિકાર નિશ્ચિત સ્વરૂપ આપવું, 466 00:21:09,910 --> 00:21:15,030 સમસ્યા ચાલી રહેલ સમય કે, ઇનપુટ તરીકે એ somethings લે 467 00:21:15,030 --> 00:21:19,150 એક હે મોટા બરાબર N 2 કરતાં ઓછી છે. 468 00:21:19,150 --> 00:21:20,640 તેથી તે પર શરતી છે. 469 00:21:20,640 --> 00:21:24,150 એ કરતાં ઓછી હોય છે, તેથી જો, સ્પષ્ટ કરવા 2, અમે પછી ખૂબ જ ટૂંકી યાદી છે 470 00:21:24,150 --> 00:21:29,151 n છે જ્યાં ચાલી રહેલ સમય n ના, ટી, 1 અથવા 0, આ ખૂબ જ ચોક્કસ કિસ્સામાં, 471 00:21:29,151 --> 00:21:30,650 તે માત્ર સતત સમય હોઈ ચાલે છે. 472 00:21:30,650 --> 00:21:32,691 તે એક લઇ રહ્યું છે , ગમે, બે પગલાંઓ પગલું. 473 00:21:32,691 --> 00:21:33,950 તે પગલાંઓ એક નિશ્ચિત સંખ્યા છે. 474 00:21:33,950 --> 00:21:38,840 >> તેથી રસદાર ભાગ ચોક્કસ જ હોવી જોઈએ સ્યુડોકોડનો અન્ય કેસ. 475 00:21:38,840 --> 00:21:40,220 બીજું કેસ. 476 00:21:40,220 --> 00:21:44,870 તત્વો સૉર્ટ ડાબી અડધા સૉર્ટ અધિકાર તત્વો અડધા છટણી અર્ધભાગ મર્જ. 477 00:21:44,870 --> 00:21:46,800 તે પગલાં દરેક કેટલો સમય લાગે છે? 478 00:21:46,800 --> 00:21:49,780 વેલ, જો ચાલી રહેલ n તત્વોના સૉર્ટ કરવા માટે સમય 479 00:21:49,780 --> 00:21:53,010 છે, માતાનો તે ખૂબ જ કૉલ કરો સામાન્ય, ટી n ના, 480 00:21:53,010 --> 00:21:55,500 પછી ડાબી સૉર્ટ તત્વો અડધા 481 00:21:55,500 --> 00:21:59,720 છે, પ્રકારની કહીને જેવી, 2 દ્વારા વિભાજી n ના ટી, 482 00:21:59,720 --> 00:22:03,000 અને એ જ રીતે જમણી અડધા સૉર્ટ તત્વો છે, પ્રકારની કહીને જેવી, 483 00:22:03,000 --> 00:22:06,974 N ના ટી 2 વિભાજિત છે, અને પછી છટણી અર્ધભાગ મર્જ. 484 00:22:06,974 --> 00:22:08,890 વેલ હું મળી છે તો કેટલાક અહીં તત્વો નંબર, 485 00:22:08,890 --> 00:22:11,230 ચાર, અને કેટલાક નંબર જેવી અહીં તત્વો, ચાર જેમ, 486 00:22:11,230 --> 00:22:14,650 અને હું આ ચાર દરેક મર્જ કરવા છે , અને આ ચાર દરેક એક 487 00:22:14,650 --> 00:22:17,160 અન્ય પછી, કે જેથી આખરે હું આઠ તત્વો હોય છે. 488 00:22:17,160 --> 00:22:20,230 તે n પગલાંઓ ઓ મોટી છે જેવી લાગે છે? 489 00:22:20,230 --> 00:22:23,500 હું આંગળીઓ અને દરેક એ મળી છે, તો તેમને સ્થળ માં મર્જ કરી શકાય છે, 490 00:22:23,500 --> 00:22:25,270 કે અન્ય n પગલાંઓ જેવું છે. 491 00:22:25,270 --> 00:22:27,360 >> તેથી ખરેખર formulaically, અમે આ વ્યક્ત કરી શકો છો 492 00:22:27,360 --> 00:22:29,960 પ્રથમ થોડો Scarily યદ્યપિ નજરમાં છે, પરંતુ તે કંઈક છે 493 00:22:29,960 --> 00:22:31,600 બરાબર છે કે તર્ક મેળવે છે. 494 00:22:31,600 --> 00:22:35,710 ચાલી રહેલ સમય, ટી n ના, જો એ એક કરતાં વધારે અથવા 2 બરાબર છે. 495 00:22:35,710 --> 00:22:42,500 આ કિસ્સામાં, બીજું કિસ્સામાં, એ ટી 2 દ્વારા વિભાજી n ના, વત્તા ટી 2 દ્વારા વિભાજી, 496 00:22:42,500 --> 00:22:45,320 વત્તા n ના ઓ મોટી, કેટલાક પગલાંઓ રેખીય નંબર, 497 00:22:45,320 --> 00:22:51,630 કદાચ બરાબર n એ, કદાચ 2 વખત એ છે, પરંતુ તે લગભગ એ ક્રમમાં છે. 498 00:22:51,630 --> 00:22:54,060 કે જેથી, પણ, અમે કેવી રીતે કરી શકો છો છે formulaically આ વ્યક્ત. 499 00:22:54,060 --> 00:22:56,809 હવે તમે જ્યાં સુધી આ ખબર નથી તમે તમારા મન માં તે રેકોર્ડ કર્યું 500 00:22:56,809 --> 00:22:58,710 અથવા તેને જુઓ પાછા પુસ્તક, કે 501 00:22:58,710 --> 00:23:00,501 થોડી હોય શકે છે અંતે શીટ છેતરવાનો, 502 00:23:00,501 --> 00:23:03,940 પરંતુ આ ખરેખર, રહ્યું છે n લોગ n ના ઓ એક મોટી આપો 503 00:23:03,940 --> 00:23:06,620 આવૃત્તિ કારણ કે તમે સ્ક્રીન પર અહીં જોઈ રહ્યાં છો 504 00:23:06,620 --> 00:23:09,550 તમે ખરેખર સાથે, તે બહાર ન હોય તો ઉદાહરણો એક અનંત નંબર, 505 00:23:09,550 --> 00:23:13,000 અથવા તમે formulaically તે હતી, તો તમે કરશે આ જુઓ કે આ સૂત્ર કારણ કે 506 00:23:13,000 --> 00:23:17,100 પોતે ટી સાથે ફરી યાદ આવવું છે એ જમણી બાજુ પર કંઈક પર, 507 00:23:17,100 --> 00:23:21,680 ડાબી પર પર n ના ટી અને આ કરી શકો છો ખરેખર વ્યક્ત કરી, આખરે, 508 00:23:21,680 --> 00:23:24,339 n લોગ n મોટી જાઓ. 509 00:23:24,339 --> 00:23:26,130 ખાતરી જો નહિં, તો તે છે હવે દંડ માત્ર 510 00:23:26,130 --> 00:23:28,960 ખરેખર, તે છે કે, વિશ્વાસ પર લે છે, કે આવૃત્તિ તરફ દોરી જાય છે, શું 511 00:23:28,960 --> 00:23:31,780 પરંતુ આ એક માત્ર એક બીટ વધુ છે જોઈ ગાણિતિક અભિગમ 512 00:23:31,780 --> 00:23:36,520 મર્જ પ્રકારની ચાલી રહેલ સમય એકલા તેના સ્યુડોકોડનો પર આધારિત છે. 513 00:23:36,520 --> 00:23:39,030 >> હવે આપણે એક એક બીટ લેવા દો કે બધા વિસામો, 514 00:23:39,030 --> 00:23:41,710 અને પર એક નજર ચોક્કસ ભૂતપૂર્વ સેનેટર, જે 515 00:23:41,710 --> 00:23:44,260 થોડી પરિચિત જુઓ શકે છે, જે Google ની એરિક સાથે બેઠા 516 00:23:44,260 --> 00:23:48,410 એક મુલાકાતમાં માટે કેટલાક સમય પહેલા શ્મિટ, સ્ટેજ પર એક સમગ્ર ટોળું સામે 517 00:23:48,410 --> 00:23:53,710 લોકો, આખરે વિશે વાત એક વિષય, કે જે ખૂબ હવે પરિચિત છે. 518 00:23:53,710 --> 00:23:54,575 માતાનો એક નજર કરીએ. 519 00:23:54,575 --> 00:24:01,020 520 00:24:01,020 --> 00:24:03,890 >> એરિક શ્મિટ: હવે સેનેટર તમે Google પર અહીં છો 521 00:24:03,890 --> 00:24:09,490 અને હું લાગે ગમે નોકરી ઇન્ટરવ્યૂ તરીકે રાષ્ટ્રપતિના. 522 00:24:09,490 --> 00:24:11,712 હવે તે પ્રમુખ તરીકે નોકરી મેળવવા માટે મુશ્કેલ છે. 523 00:24:11,712 --> 00:24:12,670 પ્રમુખ ઓબામા: અધિકાર. 524 00:24:12,670 --> 00:24:13,940 એરિક શ્મિટ: અને તમે છો હવે [અશ્રાવ્ય] કરવા માટે જઈ રહી છે. 525 00:24:13,940 --> 00:24:15,523 તે Google પર નોકરી મેળવવા માટે પણ મુશ્કેલ છે. 526 00:24:15,523 --> 00:24:17,700 પ્રમુખ ઓબામા: અધિકાર. 527 00:24:17,700 --> 00:24:21,330 >> એરિક શ્મિટ: અમે પ્રશ્નો હોય, અને અમે અમારી ઉમેદવારો પ્રશ્નો પૂછી, 528 00:24:21,330 --> 00:24:24,310 અને આ એક લેરી Schwimmer છે. 529 00:24:24,310 --> 00:24:25,890 >> પ્રમુખ ઓબામા: બરાબર. 530 00:24:25,890 --> 00:24:27,005 >> એરિક શ્મિટ: શું છે? 531 00:24:27,005 --> 00:24:28,130 તમે ગાય્ઝ હું મજાક કરું છું છું લાગે છે? 532 00:24:28,130 --> 00:24:30,590 તે અહીં છે. 533 00:24:30,590 --> 00:24:33,490 સૌથી વધુ અસરકારક રીત શું છે એક મિલિયન 32 બીટ પૂર્ણાંકો સૉર્ટ? 534 00:24:33,490 --> 00:24:37,560 535 00:24:37,560 --> 00:24:38,979 >> પ્રમુખ ઓબામા: પરિચિત હોઈ શકે 536 00:24:38,979 --> 00:24:41,020 એરિક શ્મિટ: ક્યારેક, કદાચ હું દિલગીર છું, maybe-- 537 00:24:41,020 --> 00:24:42,750 પ્રમુખ ઓબામા: ના, ના, ના, ના, ના, મને લાગે છે 538 00:24:42,750 --> 00:24:43,240 એરિક શ્મિટ: તે તેને નથી 539 00:24:43,240 --> 00:24:45,430 પ્રમુખ ઓબામા: મને લાગે છે કે, હું બબલ લાગે 540 00:24:45,430 --> 00:24:46,875 સૉર્ટ ખોટી પર જાઓ રીત હશે. 541 00:24:46,875 --> 00:24:49,619 542 00:24:49,619 --> 00:24:50,535 એરિક શ્મિટ: પર આવે છે. 543 00:24:50,535 --> 00:24:52,200 જે તેમને આ કહ્યું? 544 00:24:52,200 --> 00:24:54,020 ઠીક છે. 545 00:24:54,020 --> 00:24:55,590 હું કોમ્પ્યુટર વિજ્ઞાન ન હતી થઈ 546 00:24:55,590 --> 00:24:58,986 >> પ્રમુખ ઓબામા: અમે કર્યું ત્યાં અમારા જાસૂસી મળી. 547 00:24:58,986 --> 00:24:59,860 પ્રોફેસર: બધા અધિકાર. 548 00:24:59,860 --> 00:25:03,370 હવે અમને પાછળ છોડી દો ગાણિતીક નિયમો સૈદ્ધાંતિક વિશ્વમાં 549 00:25:03,370 --> 00:25:06,520 આ અનંત સ્પર્શી વિશ્લેષણ તેના, અને કેટલાક વિષયો પર પાછા 550 00:25:06,520 --> 00:25:09,940 સપ્તાહ શૂન્ય અને એક છે, અને શરૂઆતથી કેટલાક તાલીમ વ્હીલ્સ દૂર કરવા માટે, 551 00:25:09,940 --> 00:25:10,450 જો તમે કરશે. 552 00:25:10,450 --> 00:25:13,241 તમે ખરેખર સમજી કે જેથી આખરે જમીન પરથી, શું છે 553 00:25:13,241 --> 00:25:16,805 , જ્યારે તમે હૂડ નીચે રહ્યું લખી કમ્પાઇલ, અને કાર્યક્રમો ચલાવો. 554 00:25:16,805 --> 00:25:19,680 આ હતું કે, ખાસ કરીને યાદ અમે અંતે જોવામાં પ્રથમ સી કાર્યક્રમ, 555 00:25:19,680 --> 00:25:22,840 એક પ્રમાણભૂત, સરળ કાર્યક્રમ પ્રકારની પ્રમાણમાં કહીએ તો, 556 00:25:22,840 --> 00:25:24,620 જેમાં, તે હેલો વર્લ્ડ છાપે છે. 557 00:25:24,620 --> 00:25:27,610 અને હું પ્રક્રિયા જણાવ્યું હતું કે, યાદ છે કે તે સ્રોતો કોડ મારફતે જાય છે 558 00:25:27,610 --> 00:25:28,430 બરાબર આ છે. 559 00:25:28,430 --> 00:25:31,180 તમે તમારા સ્રોત કોડ લે છે, પસાર તે કમ્પાઇલર દ્વારા રણકાર જેમ, 560 00:25:31,180 --> 00:25:34,650 અને બહાર કે, પદાર્થ કોડ આવે આ zeros અને મુદ્દાઓ જેમ દેખાય છે 561 00:25:34,650 --> 00:25:37,880 આ કોમ્પ્યુટર સીપીયુ, મધ્ય કે પ્રોસેસીંગ એકમ અથવા મગજ, 562 00:25:37,880 --> 00:25:39,760 આખરે સમજે છે. 563 00:25:39,760 --> 00:25:42,460 >> તે એક છે કે બહાર વળે એક વધુ પડતી સાદગીની એક બીટ, 564 00:25:42,460 --> 00:25:44,480 અમે હવે છો કે સ્થિતિ સિવાય પીંજવું 565 00:25:44,480 --> 00:25:46,720 ખરેખર કરવામાં આવી છે તે સમજવા માટે હૂડ નીચે રહ્યું 566 00:25:46,720 --> 00:25:48,600 તમે ચલાવવા દરેક સમય રણકાર, અથવા વધુ સામાન્ય રીતે, 567 00:25:48,600 --> 00:25:53,040 દરેક વખતે જ્યારે તમે એક કાર્યક્રમ બનાવવા બનાવો અને સીએફ 50 IDE ઉપયોગ. 568 00:25:53,040 --> 00:25:56,760 ખાસ કરીને, સામગ્રી, જેમ કે આ પ્રથમ પેદા થાય છે, 569 00:25:56,760 --> 00:25:58,684 જ્યારે તમે પ્રથમ તમારા કાર્યક્રમ કમ્પાઇલ. 570 00:25:58,684 --> 00:26:00,600 અન્ય શબ્દોમાં, જ્યારે તમે તમારો સ્રોત કોડ લેવા 571 00:26:00,600 --> 00:26:04,390 અને શું પ્રથમ છે, તે કમ્પાઇલ રણકાર દ્વારા outputted રહી 572 00:26:04,390 --> 00:26:06,370 વિધાનસભા કોડ તરીકે ઓળખાય છે કંઈક છે. 573 00:26:06,370 --> 00:26:08,990 અને હકીકતમાં, તે બરાબર આ જેવો દેખાય છે. 574 00:26:08,990 --> 00:26:11,170 >> હું એક આદેશ ચાલી હતી અગાઉ આદેશ વાક્ય. 575 00:26:11,170 --> 00:26:16,260 રણકાર ડૅશ કેપિટલ ઓ hello.c, અને આ એક ફાઈલ બનાવી 576 00:26:16,260 --> 00:26:19,490 મને કહેવામાં આવે છે hello.s માટે, જે અંદર બરાબર હતા 577 00:26:19,490 --> 00:26:22,290 આ સમાવિષ્ટો, અને થોડી વધુ ઉપર અને નીચે વધુ થોડી, 578 00:26:22,290 --> 00:26:25,080 પરંતુ હું juiciest મૂક્યો છે અહીં સ્ક્રીન પર જાણકારી. 579 00:26:25,080 --> 00:26:29,190 જો તમે નજીકથી જુઓ, તમે જોશો ઓછામાં ઓછા થોડા પરિચિત કીવર્ડ્સ. 580 00:26:29,190 --> 00:26:31,330 અમે ટોચ પર મુખ્ય હોય છે. 581 00:26:31,330 --> 00:26:35,140 અમે મધ્યમ નીચે printf છે. 582 00:26:35,140 --> 00:26:38,670 અને અમે પણ હેલો વર્લ્ડ છે નીચે અવતરણ બેકસ્લેશ n એ. 583 00:26:38,670 --> 00:26:42,450 >> અહીં બીજું બધું ખૂબ જ ઓછી સ્તર સૂચનો 584 00:26:42,450 --> 00:26:45,500 આ કોમ્પ્યુટર સીપીયુ સમજે છે. 585 00:26:45,500 --> 00:26:50,090 મેમરી ખસેડવા કે CPU સૂચનો આસપાસ, મેમરી કે ભાર શબ્દમાળાઓ, 586 00:26:50,090 --> 00:26:52,750 અને છેવટે, પ્રિન્ટ સ્ક્રીન પર વસ્તુઓ. 587 00:26:52,750 --> 00:26:56,780 હવે શું પછી છતાં થાય આ વિધાનસભા કોડ પેદા થાય છે? 588 00:26:56,780 --> 00:26:59,964 આખરે, તમે ખરેખર, નથી, હજુ પણ પદાર્થ કોડ પેદા કરે છે. 589 00:26:59,964 --> 00:27:02,630 પરંતુ પગલાંઓ ખરેખર છે કે હૂડ નીચે ચાલુ કરવામાં આવી 590 00:27:02,630 --> 00:27:04,180 આ જેમ થોડી વધુ જુઓ. 591 00:27:04,180 --> 00:27:08,390 સ્રોત કોડ, વિધાનસભા કોડ બને જે પછી પદાર્થ કોડ બને છે, 592 00:27:08,390 --> 00:27:11,930 અને અહીં સૌથી મહત્વના શબ્દો છે, કે તમે તમારી સ્રોત કોડ કમ્પાઇલ, ત્યારે 593 00:27:11,930 --> 00:27:16,300 બહાર પછી વિધાનસભા કોડ છે, અને આવે છે તમે તમારા વિધાનસભા કોડ એસેમ્બલ, ત્યારે 594 00:27:16,300 --> 00:27:17,800 બહાર પદાર્થ કોડ આવે છે. 595 00:27:17,800 --> 00:27:20,360 >> હવે રણકાર, સુપર આધુનિક છે કમ્પાઇલરોનો ઘણો જેમ, 596 00:27:20,360 --> 00:27:23,151 અને તે આ પગલાંઓ તમામ કરે છે તેની સાથે, અને તે જરૂરી નથી કરે છે 597 00:27:23,151 --> 00:27:25,360 આઉટપુટ કોઈપણ મધ્યવર્તી તમે પણ જોઈ શકો છો કે ફાઈલો. 598 00:27:25,360 --> 00:27:28,400 તે માત્ર વસ્તુઓ કમ્પાઇલ, જે સામાન્ય શબ્દ છે કે 599 00:27:28,400 --> 00:27:30,000 આ સમગ્ર પ્રક્રિયા વર્ણવે છે. 600 00:27:30,000 --> 00:27:32,000 પરંતુ તમે ખરેખર કરવા માંગો છો જો ખાસ પ્રયત્ન કરવા માટે, ત્યાં 601 00:27:32,000 --> 00:27:34,330 વધુ ઘણો તેમજ ત્યાં જઈ રહી છે. 602 00:27:34,330 --> 00:27:38,860 >> પરંતુ પણ છે કે જે પણ હવે વિચાર કરીએ કે સુપર સરળ કાર્યક્રમ hello.c, 603 00:27:38,860 --> 00:27:40,540 એક કાર્ય તરીકે ઓળખાય છે. 604 00:27:40,540 --> 00:27:41,870 તે printf કહેવાય છે. 605 00:27:41,870 --> 00:27:46,900 પરંતુ હું ખરેખર, printf લખી ન હતી કે જેથી વાત કરવા માટે, C સાથે આવે છે. 606 00:27:46,900 --> 00:27:51,139 તે છે કે એક કાર્ય રિકોલ છે ધોરણ io.h, જાહેર છે કે જે 607 00:27:51,139 --> 00:27:53,180 હેડર ફાઈલ છે, કે જે એક વિષય અમે ખરેખર પડશે 608 00:27:53,180 --> 00:27:55,780 લાંબા પહેલાં વધુ ઊંડાઈ ડાઇવ. 609 00:27:55,780 --> 00:27:58,000 પરંતુ હેડર ફાઈલ છે ખાસ કરીને સાથે 610 00:27:58,000 --> 00:28:02,920 એક કોડ ફાઇલ, સ્ત્રોત કોડ ફાઇલ, જેથી દ્વારા ધોરણ io.h. ત્યાં હાજર જેમ જ 611 00:28:02,920 --> 00:28:05,930 >> ક્યાંક પહેલા, કોઈ અથવા કોઈના, પણ લખ્યું 612 00:28:05,930 --> 00:28:11,040 પ્રમાણભૂત io.c તરીકે ઓળખાતી ફાઈલ જે વાસ્તવિક વ્યાખ્યાઓ, 613 00:28:11,040 --> 00:28:15,220 અથવા printf અમલીકરણ, અને અન્ય કાર્યો જુમખું, 614 00:28:15,220 --> 00:28:16,870 ખરેખર લખવામાં આવે છે. 615 00:28:16,870 --> 00:28:22,140 અમે કર્યા ધ્યાનમાં જો તેથી, કે જે આપેલ અહીં ડાબી, hello.c પર, જ્યારે કે 616 00:28:22,140 --> 00:28:26,250 સંકલિત, પણ જો hello.s અમને આપે રણકાર એક સ્થળ બચત સંતાપ નથી 617 00:28:26,250 --> 00:28:31,360 અમે તેને જોઈ છે, અને તે વિધાનસભા કોડ કરી શકો છો hello.o માં એસેમ્બલ નહીં જે 618 00:28:31,360 --> 00:28:34,630 ખરેખર, મૂળભૂત નામ છે તમે સોર્સ કમ્પાઇલ જ્યારે આપવામાં 619 00:28:34,630 --> 00:28:39,350 પદાર્થ કોડમાં કોડ છે, પરંતુ નથી હજુ સુધી તે ચલાવવા માટે એકદમ તૈયાર, 620 00:28:39,350 --> 00:28:41,460 અન્ય પગલું છે કારણ કે થાય છે, અને છે 621 00:28:41,460 --> 00:28:44,440 છેલ્લા થોડા કરવામાં આવી રહી અઠવાડિયા, તમે કદાચ અજ્ઞાત. 622 00:28:44,440 --> 00:28:47,290 >> ખાસ કરીને ક્યાંક CS50 IDE માં, અને આ 623 00:28:47,290 --> 00:28:49,870 પણ, એક એક બીટ હશે એક ક્ષણ માટે વધુ પડતી સાદગીની, 624 00:28:49,870 --> 00:28:54,670 ત્યાં છે, અથવા એક સમય પર હતી, ધોરણ io.c તરીકે ઓળખાતી ફાઈલ 625 00:28:54,670 --> 00:28:58,440 કોઈને માં સંકલિત છે કે ધોરણ io.s અથવા સમકક્ષ 626 00:28:58,440 --> 00:29:02,010 કોઈને પછી એસેમ્બલ ધોરણ io.o માં, 627 00:29:02,010 --> 00:29:04,600 અથવા તે બહાર વળે થોડા અલગ ફાઇલ 628 00:29:04,600 --> 00:29:07,220 એક અલગ હોઈ શકે છે કે બંધારણમાં એકસાથે ફાઇલ એક્સ્ટેંશન, 629 00:29:07,220 --> 00:29:11,720 સિદ્ધાંત અને કાલ્પનિક, બરાબર પરંતુ તે પગલાં કેટલાક સ્વરૂપ થાય હતી. 630 00:29:11,720 --> 00:29:14,060 કહે છે, હવે તે છે, જે હું એક કાર્યક્રમ લખી રહ્યો છું ત્યારે, 631 00:29:14,060 --> 00:29:17,870 hello.c, માત્ર કહે છે કે, હેલો વર્લ્ડ, અને હું કોઈ બીજાના કોડ ઉપયોગ કરું છું 632 00:29:17,870 --> 00:29:22,480 એક પર એક વાર હતી, જે printf, જેવા સમય, પ્રમાણભૂત io.c તરીકે ઓળખાતી ફાઈલ માં, 633 00:29:22,480 --> 00:29:26,390 પછી અચાનક હું મારા લઇ જાય છે પદાર્થ કોડ છે, મારા zeros અને મુદ્દાઓ, 634 00:29:26,390 --> 00:29:29,260 અને તે વ્યક્તિ પદાર્થ કોડ, અથવા zeros અને મુદ્દાઓ, 635 00:29:29,260 --> 00:29:34,970 અને કોઈક માં તેમને એકસાથે લિંક કે હેલો, કહેવાય એક અંતિમ ફાઇલ, 636 00:29:34,970 --> 00:29:38,070 છે zeros તમામ અને મારી મુખ્ય કાર્ય કરતા હો, 637 00:29:38,070 --> 00:29:40,830 અને zeros તમામ અને printf માટે રાશિઓ. 638 00:29:40,830 --> 00:29:44,900 >> અને ખરેખર, કે જે છેલ્લા પ્રક્રિયા છે કહેવાય છે, તમારા પદાર્થ કોડ જોડે છે. 639 00:29:44,900 --> 00:29:47,490 જે આઉટપુટ એક્ઝિક્યુટેબલ ફાઇલ છે. 640 00:29:47,490 --> 00:29:49,780 તેથી ઔચિત્યની માં, ખાતે દિવસ, કંઇ અંત 641 00:29:49,780 --> 00:29:52,660 સપ્તાહ એક ત્યારથી બદલાઈ ગયો છે, ત્યારે અમે પ્રથમ કાર્યક્રમો સંકલન શરૂ કર્યું. 642 00:29:52,660 --> 00:29:55,200 ખરેખર, આ તમામ કરવામાં આવી છે હૂડ નીચે રહ્યું, 643 00:29:55,200 --> 00:29:57,241 પરંતુ હવે અમે એક સ્થિતિમાં છીએ જ્યાં અમે ખરેખર કરી શકો છો 644 00:29:57,241 --> 00:29:58,794 આ વિવિધ પગલાંઓ સિવાય પીંજવું. 645 00:29:58,794 --> 00:30:00,710 અને ખરેખર, ઓવરને અંતે દિવસ, અમે હજુ પણ છો 646 00:30:00,710 --> 00:30:04,480 zeros અને મુદ્દાઓ સાથે બાકી જે એક મહાન જીતે હવે ખરેખર છે 647 00:30:04,480 --> 00:30:08,620 સી અન્ય ક્ષમતા, કે અમે મોટા ભાગે લાભ માટે હતી નથી કર્યું 648 00:30:08,620 --> 00:30:11,250 તારીખ કરવા માટે, bitwise ઓપરેટરો તરીકે ઓળખાય છે. 649 00:30:11,250 --> 00:30:15,220 અન્ય શબ્દોમાં, આમ અત્યાર સુધી, ગમે ત્યારે અમે કર્યું સી C અથવા ચલો માહિતી સાથે વ્યવહાર, 650 00:30:15,220 --> 00:30:17,660 અમે જેવી વસ્તુઓ પડ્યું અક્ષરો અને ફ્લોટ્સ અને આઈએનએસ 651 00:30:17,660 --> 00:30:21,990 અને longs અને ડબલ્સમાં અને જેવા છે, પરંતુ તે બધા ઓછામાં ઓછા આઠ બિટ્સ છે. 652 00:30:21,990 --> 00:30:25,550 અમે હજુ સુધી કરવાનો ક્યારેય કરવામાં આવી છે વ્યક્તિગત બિટ્સ સાથે ચેડાં 653 00:30:25,550 --> 00:30:28,970 પણ એક વ્યક્તિગત બીટ છતાં, અમે એક 0 અને 1 પ્રતિનિધિત્વ કરી શકે છે ખબર છે કે. 654 00:30:28,970 --> 00:30:32,640 હવે તે સી કે બહાર વળે છે, તમે વ્યક્તિગત બિટ્સ ઍક્સેસ મેળવી શકો છો, 655 00:30:32,640 --> 00:30:35,530 તમે આ વાક્યરચના ખબર હોય, જેની સાથે તેમને મેળવવા માટે. 656 00:30:35,530 --> 00:30:38,010 >> તેથી આપણે એક નજર કરીએ bitwise ઓપરેટરો છે. 657 00:30:38,010 --> 00:30:41,700 તેથી અહીં ચિત્રમાં થોડા પ્રતીકો છે કે અમે પ્રકારની પ્રકારની પહેલાં જોઇ છે. 658 00:30:41,700 --> 00:30:45,580 હું ઊભી એક ચિન્હ જોવા બાર, અને સાથે સાથે કેટલાક અન્ય 659 00:30:45,580 --> 00:30:49,430 અને તે 'ચિન્હ ચિન્હ યાદ અમે પહેલાં જોઈ હોય કંઈક છે. 660 00:30:49,430 --> 00:30:54,060 તમારી પાસે જ્યાં લોજિકલ અને ઓપરેટર, તેમને બે મળીને, અથવા લોજીકલ અથવા 661 00:30:54,060 --> 00:30:56,300 ઓપરેટર, જ્યાં તમે બે ઊભી બાર છે. 662 00:30:56,300 --> 00:31:00,550 Bitwise ઓપરેટરો જે અમે પડશે વ્યક્તિગત બિટ્સ પર કામ જોવા 663 00:31:00,550 --> 00:31:03,810 માત્ર એક જ 'નું ચિહ્ન વાપરો એક લંબરૂપ બાર, કૅરેટ પ્રતીક 664 00:31:03,810 --> 00:31:06,620 આગળ, થોડી આવે ઝૂલતો ડેશ, અને પછી છોડી 665 00:31:06,620 --> 00:31:08,990 કૌંસ કૌંસ છોડી, અથવા જમણો મોટો કૌંસ જમણો મોટો કૌંસ. 666 00:31:08,990 --> 00:31:10,770 આ દરેક અલગ અલગ અર્થ હોય છે. 667 00:31:10,770 --> 00:31:11,950 >> હકીકતમાં, ચાલો એક નજર કરીએ. 668 00:31:11,950 --> 00:31:16,560 જૂના શાળા આજે, અને ઉપયોગ જઈએ yesteryear એક ટચ સ્ક્રીન, 669 00:31:16,560 --> 00:31:18,002 સફેદ બોર્ડ તરીકે ઓળખાય છે. 670 00:31:18,002 --> 00:31:19,710 અને આ સફેદ બોર્ડ અમને પરવાનગી રહ્યું છે 671 00:31:19,710 --> 00:31:27,360 કેટલાક એકદમ સરળ પ્રતીકો વ્યક્ત કરવા માટે, અથવા બદલે કેટલાક એકદમ સરળ સૂત્રો, 672 00:31:27,360 --> 00:31:29,560 કે અમે આખરે પછી કરી શકો છો લાભ, ક્રમમાં 673 00:31:29,560 --> 00:31:33,230 વ્યક્તિગત વપરાશ માટે એક સી કાર્યક્રમ અંદર બિટ્સ. 674 00:31:33,230 --> 00:31:34,480 અન્ય શબ્દોમાં, આ કરવા દો. 675 00:31:34,480 --> 00:31:37,080 એક માટે ચાલો પ્રથમ ચર્ચા નું ચિહ્ન વિશે ક્ષણ, 676 00:31:37,080 --> 00:31:39,560 જે bitwise અને ઓપરેટર છે. 677 00:31:39,560 --> 00:31:42,130 બીજા શબ્દોમાં કહીએ તો, આ છે પરવાનગી આપે છે કે એક ઓપરેટર 678 00:31:42,130 --> 00:31:45,930 મને ડાબા હાથ ચલ હોય ખાસ કરીને, અને જમણી-બાજુના ચલ, 679 00:31:45,930 --> 00:31:50,640 અથવા વ્યક્તિગત કિંમત છે કે જો અમે અને તેમને મળીને મને એક અંતિમ પરિણામ આપે છે. 680 00:31:50,640 --> 00:31:51,560 તેથી હું શું અર્થ છે? 681 00:31:51,560 --> 00:31:54,840 એક કાર્યક્રમ માં, તમે એક ચલ છે, તો આ કિંમતો સ્ટોર્સ એક છે, 682 00:31:54,840 --> 00:31:58,000 અથવા સરળ રાખવા, અને માત્ર દો વ્યક્તિગત રીતે zeros અને મુદ્દાઓ લખી, 683 00:31:58,000 --> 00:32:00,940 'ચિન્હ ઓપરેટર કેવી રીતે કામ કરે અહીં છે. 684 00:32:00,940 --> 00:32:06,400 0 ચિન્હ 0 0 જેટલી રહ્યું છે. 685 00:32:06,400 --> 00:32:07,210 હવે શા માટે છે? 686 00:32:07,210 --> 00:32:09,291 >> તે ખૂબ જ સમાન છે બુલિયન સમીકરણો, 687 00:32:09,291 --> 00:32:10,540 કે અમે આમ અત્યાર સુધી ચર્ચા કરી. 688 00:32:10,540 --> 00:32:15,800 તમે બધા પછી લાગે છે કે, 0 ખોટા, 0, ખોટા ખોટા અને ખોટા છે 689 00:32:15,800 --> 00:32:18,720 અમે ચર્ચા કરી છે, કારણ કે તાર્કિક રીતે, પણ ખોટા. 690 00:32:18,720 --> 00:32:20,270 તેથી અમે અહીં તેમજ 0 મળે છે. 691 00:32:20,270 --> 00:32:24,390 તમે 0 ચિન્હ લેતા હો તો 1, સારી કે, પણ, 692 00:32:24,390 --> 00:32:29,890 કારણ કે આ માટે, 0 પ્રયત્ન રહ્યું છે ડાબી બાજુની અભિવ્યક્તિ, સાચું કે 1 પ્રયત્ન 693 00:32:29,890 --> 00:32:32,360 તે સાચું અને સાચા હોઈ જરૂર છે. 694 00:32:32,360 --> 00:32:36,320 પરંતુ, અહીં આપણે ખોટા છે અને સાચું, અથવા 0 અને 1. 695 00:32:36,320 --> 00:32:42,000 હવે ફરી, અમે 1 નું ચિહ્ન હોય તો 0, પણ, 0 પ્રયત્ન રહ્યું છે, 696 00:32:42,000 --> 00:32:47,240 અને અમે 1 નું ચિહ્ન 1 હોય તો, છેલ્લે આપણે એક bit 1 છે નથી. 697 00:32:47,240 --> 00:32:50,340 તેથી અન્ય શબ્દોમાં, અમે કરી રહ્યા છીએ આ ઓપરેટર સાથે રસપ્રદ કંઈપણ 698 00:32:50,340 --> 00:32:51,850 હજુ સુધી, આ ચિન્હ ઓપરેટર. 699 00:32:51,850 --> 00:32:53,780 તે bitwise અને ઓપરેટર છે. 700 00:32:53,780 --> 00:32:57,290 પરંતુ આ ઘટકો છે જે મારફતે અમે કરી શકો છો 701 00:32:57,290 --> 00:32:59,240 અમે ટૂંક સમયમાં જોશો રસપ્રદ વસ્તુઓ. 702 00:32:59,240 --> 00:33:02,790 >> હવે માત્ર એક જ જોવા દો અહીં જમણી બાજુ પર પર ઊભી પટ્ટી. 703 00:33:02,790 --> 00:33:06,710 હું એક બીટ 0 અને હું હોય તો અથવા તેની સાથે, આ bitwise 704 00:33:06,710 --> 00:33:11,030 અથવા ઓપરેટર, અન્ય 0 બીટ, કે મને 0 આપી રહ્યું છે. 705 00:33:11,030 --> 00:33:17,540 હું 0 બીટ અને અથવા તેની સાથે લેતા હો તો એક bit 1 છે, તો પછી હું 1 વિચાર જાઉં છું. 706 00:33:17,540 --> 00:33:19,830 અને હકીકતમાં, માત્ર માટે સ્પષ્ટતા, મને પાછા જવા દો 707 00:33:19,830 --> 00:33:23,380 કે જેથી મારા ઊભી બાર 1 માતાનો માટે નથી ભૂલ થાય છે. 708 00:33:23,380 --> 00:33:26,560 મને બધા લખાણ લખે દો મારા 1 થોડું વધારે છે 709 00:33:26,560 --> 00:33:32,700 હું તો સ્પષ્ટ છે, કે જેથી અમે આગામી જુઓ, 1 અથવા 0, કે જે માટે 1 પ્રયત્ન રહ્યું છે છે, 710 00:33:32,700 --> 00:33:39,060 અને હું 1 અથવા 1 કે હોય તો, પણ, એક માટે 1 પ્રયત્ન રહ્યું છે. 711 00:33:39,060 --> 00:33:42,900 તેથી જો તમે તાર્કિક જુઓ કે કરી શકો છો ઓપરેટર ખૂબ જ અલગ તરીકે વર્તે છે. 712 00:33:42,900 --> 00:33:48,070 , આ 0 મને આપે અથવા 0 મને 0 આપે છે પરંતુ દરેક અન્ય મિશ્રણ મને 1 આપે છે. 713 00:33:48,070 --> 00:33:52,480 તેથી લાંબા સમયથી હું એક 1 હોય છે ફોર્મ્યુલા, પરિણામ માટે 1 પ્રયત્ન રહ્યું છે. 714 00:33:52,480 --> 00:33:55,580 >> આ અને સાથે તેનાથી વિપરીત ઓપરેટર, જે 'નું, 715 00:33:55,580 --> 00:34:00,940 હું બે માતાનો 1 હોય તો જ સમીકરણ, હું ખરેખર એક 1 બહાર વિચાર નથી. 716 00:34:00,940 --> 00:34:02,850 હવે થોડા અન્ય છે ઓપરેટરો તેમજ. 717 00:34:02,850 --> 00:34:04,810 તેમને એક થોડો વધુ સામેલ છે. 718 00:34:04,810 --> 00:34:07,980 તેથી મને આગળ વધો અને ભૂંસવું દો આ અમુક જગ્યા મુક્ત કરવા. 719 00:34:07,980 --> 00:34:13,020 720 00:34:13,020 --> 00:34:16,460 અને ચાલો આ પર એક નજર કરીએ માત્ર એક ક્ષણ માટે કૅરેટ પ્રતીક. 721 00:34:16,460 --> 00:34:18,210 આ સામાન્ય રીતે એક છે અક્ષર તમે લખી શકો છો 722 00:34:18,210 --> 00:34:21,420 તમારા કીબોર્ડ હોલ્ડિંગ પાળી પર અને તમારા યુ માથે નંબરો પછી એક 723 00:34:21,420 --> 00:34:22,250 કીબોર્ડ. 724 00:34:22,250 --> 00:34:26,190 >> તેથી આ વિશિષ્ટ છે અથવા ઓપરેટર, વિશિષ્ટ કે. 725 00:34:26,190 --> 00:34:27,790 તેથી અમે ફક્ત અથવા ઓપરેટર જોવા મળી હતી. 726 00:34:27,790 --> 00:34:29,348 આ વિશિષ્ટ કે ઓપરેટર છે. 727 00:34:29,348 --> 00:34:30,639 ખરેખર શું તફાવત છે? 728 00:34:30,639 --> 00:34:34,570 વેલ માત્ર ફોર્મ્યુલા જોવા દો, અને છેવટે ઘટકો તરીકે આ વાપરો. 729 00:34:34,570 --> 00:34:37,690 0 XOR 0. 730 00:34:37,690 --> 00:34:39,650 હું કહેવા જાઉં છું હંમેશા 0 હોય છે. 731 00:34:39,650 --> 00:34:41,400 તે XOR ની વ્યાખ્યા છે. 732 00:34:41,400 --> 00:34:47,104 0 XOR 1 માટે 1 પ્રયત્ન રહ્યું છે. 733 00:34:47,104 --> 00:34:58,810 1 XOR 0, 1 પ્રયત્ન રહ્યું છે અને 1 XOR માટે 1 પ્રયત્ન રહ્યું છે? 734 00:34:58,810 --> 00:34:59,890 ખોટું શું છે? 735 00:34:59,890 --> 00:35:00,520 અથવા અધિકાર? 736 00:35:00,520 --> 00:35:01,860 મને ખબર નથી. 737 00:35:01,860 --> 00:35:02,810 0. 738 00:35:02,810 --> 00:35:04,700 હવે અહીં શું ચાલી રહ્યું છે? 739 00:35:04,700 --> 00:35:06,630 વેલ વિશે વિચારો આ ઓપરેટર નામ. 740 00:35:06,630 --> 00:35:09,980 વિશિષ્ટ કે, જેથી નામ પ્રકારની, સૂચવે છે 741 00:35:09,980 --> 00:35:13,940 જવાબ ફક્ત હોઈ ચાલે છે 1 ઇનપુટ્સ વિશિષ્ટ છે, તો 742 00:35:13,940 --> 00:35:15,560 સંપૂર્ણપણે અલગ છે. 743 00:35:15,560 --> 00:35:18,170 તેથી અહીં ઇનપુટ્સ છે જ છે, તેથી આઉટપુટ 0 હોય છે. 744 00:35:18,170 --> 00:35:20,700 અહીં ઇનપુટ્સ છે જ છે, તેથી આઉટપુટ 0 હોય છે. 745 00:35:20,700 --> 00:35:25,640 અહીં આઉટપુટ તેઓ અલગ છે વિશિષ્ટ છે, અને તેથી આઉટપુટ 1. 746 00:35:25,640 --> 00:35:28,190 તેથી તે ખૂબ સમાન છે અને, તે ખૂબ જ સમાન છે 747 00:35:28,190 --> 00:35:32,760 અથવા બદલે તે જ છે અથવા, પરંતુ માત્ર એક વિશિષ્ટ રીતે. 748 00:35:32,760 --> 00:35:36,210 આ એક લાંબા સમય સુધી એક 1 અમે બે માતાનો 1 છે, કારણ કે 749 00:35:36,210 --> 00:35:38,621 અને સંપૂર્ણપણે નથી, તેમને માત્ર એક. 750 00:35:38,621 --> 00:35:39,120 બધા અધિકાર. 751 00:35:39,120 --> 00:35:40,080 શું અન્ય વિશે શું? 752 00:35:40,080 --> 00:35:44,220 વેલ ઝૂલતો ડેશ, વચ્ચે, છે ખરેખર સરસ અને સરળ, thankfully. 753 00:35:44,220 --> 00:35:46,410 અને આ એક unary છે જેનો અર્થ થાય છે ઓપરેટર, 754 00:35:46,410 --> 00:35:50,400 તે માત્ર એક ઇનપુટ પર લાગુ છે એક operand, તેથી વાત કરવા માટે. 755 00:35:50,400 --> 00:35:51,800 નથી છોડી અને જમણી. 756 00:35:51,800 --> 00:35:56,050 બીજા શબ્દોમાં કહીએ તો, તમે ઝૂલતો ડેશ લેવા તો 0, જવાબ વિરુદ્ધ હશે. 757 00:35:56,050 --> 00:35:59,710 અને તમે 1 ઝૂલતો ડેશ લેવા હોય તો, જવાબ વિરુદ્ધ હશે. 758 00:35:59,710 --> 00:36:02,570 તેથી ઝૂલતો ડેશ ઓપરેટર છે થોડી ખંડન એક માર્ગ છે, 759 00:36:02,570 --> 00:36:06,000 અથવા એક બીટ ફ્લિપિંગ 0 1, અથવા 0 1. 760 00:36:06,000 --> 00:36:09,820 >> અને છેવટે આપણને નહીં માત્ર બે અંતિમ ઓપરેટરો સાથે, 761 00:36:09,820 --> 00:36:13,840 ડાબી પાળી જેથી-કહેવાય છે, અને જમણી Shift ઓપરેટર જેથી-કહેવાય છે. 762 00:36:13,840 --> 00:36:16,620 માતાનો કેવી રીતે તે કામ પર એક નજર કરીએ. 763 00:36:16,620 --> 00:36:20,780 લખેલા ડાબી પાળી ઓપરેટર, કે જેમ બે કોણ કૌંસ સાથે 764 00:36:20,780 --> 00:36:22,110 નીચે પ્રમાણે ચલાવે છે. 765 00:36:22,110 --> 00:36:27,390 તો ડાબી મારા ઇનપુટ, અથવા મારા operand, પાળી ઓપરેટર તદ્દન ખાલી એક 1 છે. 766 00:36:27,390 --> 00:36:33,750 અને હું પછી કોમ્પ્યુટર કહી 1, સાત સ્થળોએ કહે છે કે પાળી છોડી, 767 00:36:33,750 --> 00:36:37,150 પરિણામ હું છતાં તરીકે છે કે 1 લે છે, અને તેને ખસેડવા 768 00:36:37,150 --> 00:36:40,160 માટે સાત સ્થાનો ડાબે, અને મૂળભૂત રીતે, 769 00:36:40,160 --> 00:36:42,270 અમે ધારે છે કે માટે જઈ રહ્યાં છો જમણી જગ્યા 770 00:36:42,270 --> 00:36:44,080 zeros સાથે ગાદીવાળાં કરી રહ્યું છે. 771 00:36:44,080 --> 00:36:50,316 અન્ય શબ્દોમાં, 1 પાળી 7 રહ્યું છે બાકી ત્યાર બાદ, 1 કે મને આપી દ્વારા 1, 2, 3, 772 00:36:50,316 --> 00:36:54,060 4, 5, 6, 7 zeros. 773 00:36:54,060 --> 00:36:57,380 એક રીતે તેથી, તે માટે પરવાનગી આપે છે 1 જેમ નાના નંબર લે છે, 774 00:36:57,380 --> 00:37:00,740 અને સ્પષ્ટ રીતે ખૂબ તે બનાવે છે આ રીતે ઘણી મોટી, ખૂબ, 775 00:37:00,740 --> 00:37:06,460 પરંતુ અમે ખરેખર જોવા જઈ રહ્યાં છો તે માટે વધુ હોંશિયાર અભિગમ 776 00:37:06,460 --> 00:37:08,080 તેના બદલે, તેમજ, 777 00:37:08,080 --> 00:37:08,720 >> બધા અધિકાર. 778 00:37:08,720 --> 00:37:10,060 કે સપ્તાહ ત્રણ માટે છે. 779 00:37:10,060 --> 00:37:11,400 અમે તમને આગામી સમય જોશો. 780 00:37:11,400 --> 00:37:12,770 આ CS50 હતી. 781 00:37:12,770 --> 00:37:17,270 782 00:37:17,270 --> 00:37:22,243 >> [સંગીત વગાડવાનો] 783 00:37:22,243 --> 00:37:25,766 >> 1 વક્તા: તેમણે નાસ્તો પર હતી ગરમ લવારો sundae ખાવાથી બાર. 784 00:37:25,766 --> 00:37:28,090 તેણે પોતાના મોં ઉપર તે બધા હતી. 785 00:37:28,090 --> 00:37:30,506 તેમણે દાઢી જેમ કે ચોકલેટ પહેર્યા છે 786 00:37:30,506 --> 00:37:31,756 2 વક્તા: તમે શું કરી રહ્યા છે? 787 00:37:31,756 --> 00:37:32,422 3 વક્તા: Hmmm? 788 00:37:32,422 --> 00:37:33,500 શું? 789 00:37:33,500 --> 00:37:36,800 >> 2 વક્તા: તમે માત્ર ડબલ ડુબાડવું હતી? 790 00:37:36,800 --> 00:37:38,585 તમે ડબલ ચિપ ઘટાડો થયો. 791 00:37:38,585 --> 00:37:39,460 3 વક્તા: મને બહાનું. 792 00:37:39,460 --> 00:37:44,440 2 વક્તા: તમે ચિપ ઘટાડો થયો એક ડંખ લીધો, અને તમે ફરીથી ઘટાડો થયો. 793 00:37:44,440 --> 00:37:44,940 3 વક્તા: 794 00:37:44,940 --> 00:37:48,440 2 વક્તા: તે મૂકવા જેવા છે તેથી ડુબાડવું તમારું સમગ્ર મોં અધિકાર. 795 00:37:48,440 --> 00:37:52,400 આગામી સમય તમે એક ચિપ લેવા માત્ર એક જ વાર ડૂબવું છે, અને તે અંત. 796 00:37:52,400 --> 00:37:53,890 >> 3 વક્તા: તમે ડેન શું જાણો છો? 797 00:37:53,890 --> 00:37:58,006 તમે ડૂબવું કરવા માંગો છો કે જે રીતે ડૂબવું. 798 00:37:58,006 --> 00:38:01,900 હું ડૂબવું કરવા માંગો છો કે જે રીતે ડૂબવું પડશે. 799 00:38:01,900 --> 00:38:03,194