ડેવીડના MALAN: બધા અધિકાર.
તેથી આ CS50 છે, અને આ છે હવે અઠવાડિયે ત્રણ શરૂઆત.
>> હવે ત્યાં સુધી, અમે કર્યું અપ તેથી સી કાર્યક્રમો લખવાનું કરવામાં આવી
કે થોડો જુઓ અહીં આ કંઈક.
તેથી અમે એક દંપતિ ના મળી છે તીવ્ર ટોચ પર સમાવેશ થાય છે.
અમે રદબાતલ, પૂર્ણાંક મુખ્ય મળ્યું, અને છે પછી કંઈક મધ્યમાં કરવું,
અંદર કોડ કેટલાક બીટ કે કાર્ય.
પરંતુ કી હકીકત એ છે કે કરવામાં આવી છે અમે અહીં રદબાતલ કહે કર્યું છે.
તેથી રદબાતલ, આ સમય તમામ, તે સ્પષ્ટ કરે આ કાર્યક્રમ, જ્યારે ચલાવો કે,
માત્ર તેના નામ દ્વારા ચલાવી શકાય છે.
તમે કોઇપણ બીજા શબ્દોમાં લખો કરી શકતા નથી અથવા આ કાર્યક્રમના નામ જ્યારે પછી નંબરો
તે ચાલી રહ્યું છે.
તેથી, ઉદાહરણ માટે કાર્યક્રમ, તો હેલો તરીકે ઓળખાતી ફાઈલ માં સંકલિત,
તમે હેલ્લો કરી શકે છે, પરંતુ તે તે છે.
>> આ માત્ર રસ્તો છે કે તમે કરી શકે આ કાર્યક્રમ માટે ઇનપુટ પૂરી પાડે છે
એક કાર્ય ફોન દ્વારા છે.
દાખલા તરીકે, શું કાર્ય અમે આમ અત્યાર સુધી ઉપયોગ કરવામાં આવી છે
વપરાશકર્તા તરફથી ઇનપુટ વિચાર?
>> પ્રેક્ષક: શબ્દમાળા મેળવો.
ડેવીડના MALAN: શબ્દમાળા મેળવવા, અથવા માટે પૂર્ણાંક વિચાર, અથવા તમે અન્ય લોકો જોઇ છે,
તમે હજુ સુધી તેમને ઉપયોગ કર્યો નથી, પણ જો જેમ, લાંબા લાંબા અને ગમે છે.
પરંતુ ધારો કે અમે ખરેખર શરૂ કરવા માંગો છો
થોડી વધુ છે કે લેખન કાર્યક્રમો પ્રમાણિકપણે, થોડી વધુ સર્વતોમુખી, અને
તમે કરેલો આદેશો જેવા આસ્થાપૂર્વક, મેળવવામાં આવી,
થોડો ટેવાયેલું.
Cd ખાલી જગ્યા ડ્રૉપબૉક્સ જેમ.
આ, અલબત્ત, ફેરફારો તમારા ડિરેક્ટરી, એમ ધારી રહ્યા છીએ
તમે જોન હાવર્ડ ઘર છો ડિરેક્ટરી, તમારા ડ્રૉપબૉક્સ ફોલ્ડરમાં.
દરમિયાન, આ જેવા આદેશ , pset2 તરીકે ઓળખાતી નવી ડિરેક્ટરીમાં બનાવે છે
તમે હોઈ શકે છે, કારણ કે પહેલેથી જ અથવા ટૂંક સમયમાં સમસ્યા માટે બે સુયોજિત કરો.
બનાવો હેલો, અલબત્ત, એક આદેશ છે કે હેલ્લો કહેવાય કાર્યક્રમ બનાવે છે
હેલો ડોટ કો તરીકે ઓળખાતી ફાઈલ છે.
અને આ દરેક કિસ્સાઓમાં, હવે, અમે હતી કર્યું
કહેવાતા પર દલીલ પૂરી પાડે છે આદેશ વાક્ય છે, ખીલેલું પ્રોમ્પ્ટ પર,
એ નથી કે જાણે તેથી શું બિલ્ડ, અને તેથી માટે કે mkdir બનાવવા માટે શું ફોલ્ડર જાણે છે,
અને તેથી કે CD જાણે જ્યાં તમે જવા માંગો છો.
પરંતુ હવે ત્યાં સુધી, અમે કહેતા રાખવા કે મુખ્ય, તમારું મૂળભૂત કાર્ય,
એક રદબાતલ અભિવ્યક્તિ છે તે કૌંસ ની અંદર,
જે તે અર્થ એ થાય કે કોઇ દલીલો ન લઈ શકે છે.
>> તેથી આજે શરૂ, અમે શું રહ્યા છીએ
, અમે શરૂ કરવા માટે જઈ રહ્યાં છો છે આ પણ જેવી વસ્તુઓ સહાયક.
હકીકતમાં, આ કેસ છે, કે જે તમે સામાન્ય રીતે જાતે લખો નથી,
આમ કરવામાં આવ્યું છે બનાવો અમારા માટે, નથી
પરંતુ એક, બે, ત્રણ વધારાના આ કાર્યક્રમ નામ આપવામાં આવ્યું પછી શબ્દમાળાઓ
રણકાર.
કેવી રીતે અમે આ હાંસલ કરે છે?
>> ઠીક છે, આજે શરૂ, અમે માંગો છો જ્યાં કિસ્સાઓમાં
આ મારફતે ઇનપુટ આપવા માટે આદેશ વાક્ય કહેવાતા,
અમે ઉમેરી રહ્યા શરૂ રહ્યા છીએ અહીં yellow-- શું છે
પૂર્ણાંક argc અલ્પવિરામ સાથે રદબાતલ બદલી શબ્દમાળા argv ઓપન કૌંસ બંધ કૌંસ.
હવે આ રસપ્રદ છે કારણો એક દંપતિ માટે.
એક, તે અમને લખી દો બનશે થોડી વધુ ગતિશીલ છે કે કાર્યક્રમો.
પરંતુ, વધુ compellingly, તે ખોલો બનશે
માટે હવે વાતચીત શું એરે કરી શકો છો ખરેખર
શું શબ્દમાળા માટે, ઉપયોગ કરી ખરેખર હૂડ નીચે છે,
આગામી સપ્તાહ સુધી અમે ડાઇવિંગ શરૂ જ્યારે મશીન છે કેવી રીતે પણ ઊંડા માં
આ સામગ્રી કામ તમામ બનાવે છે.
પરંતુ હવે માટે, ચાલો ડ્રો દો, કદાચ, એક ચિત્ર.
>> તમે એક કાર્યક્રમ લખવા જ્યારે જાહેર મુખ્ય સાથે
આ રીતે, જેમ કે મુખ્ય કે બે દલીલો, પૂર્ણાંક લે છે
and-- શું માહિતી પ્રકાર બીજી દલીલ છે?
>> પ્રેક્ષક: અરે.
ડેવીડના MALAN: અરે.
તે છે જેમ તેથી તે પ્રથમ નજરમાં લાગે છે શબ્દમાળા, પરંતુ ચોરસ કૌંસ નોટિસ.
અમે રજૂ છેલ્લા સમય યાદ એક એરે ની કલ્પના.
અને એરે ચોરસ કૌંસ વાપરો સંદર્ભો એક દંપતિ છે.
તમે ચોરસ ઉપયોગ કરી શકે છે કૌંસ એક એરે જાય
અને, જેમ કે ચોક્કસ તત્વ વિચાર કૌંસ 0 અથવા કૌંસ 1 અથવા કૌંસ 2.
પરંતુ અમે તો થોડા સમય માટે, જોવા મળી હતી છેલ્લા અઠવાડિયે તે પણ તમે
આ ચોરસ કૌંસ વાપરો એક એરે માપ જાહેર,
તમે અગાઉથી ખબર હોય કેટલા ints અથવા કેટલા શબ્દમાળાઓ અથવા જે તમે
ખરેખર માંગો છો.
તેથી તે વળે બહાર ત્યાં અહીં ત્રીજા સંદર્ભ
કે અંદર કોઈ ધરાવે છે આ ચોરસ કૌંસ છે.
હું અહીં હોય છે, ત્યારે તમે, સ્પષ્ટ, argv કંઈક ના નામ,
જે માત્ર એક ફેન્સી માર્ગ છે દલીલ વેક્ટર કહ્યું જે
અન્ય ફેન્સી માર્ગ છે , દલીલો ઝાકઝમાળ કહેતા
ઓપન કૌંસ બંધ કૌંસ માત્ર તમે જરૂરી નથી કે જે થાય છે
કેવી રીતે મોટા અગાઉથી ખબર એરે, હોઈ ચાલે છે
પરંતુ તમે તેને એક એરે હશે ખબર.
તમે જાણતા નથી તેથી જો નંબર, ત્યાં મૂકી નથી
ઓપન કૌંસ બંધ કૌંસ માટે argv શબ્દમાળા નથી અર્થ એ થાય કે,
પરંતુ શબ્દમાળાઓ પણ દર્શાવે છે.
તેથી વાક્યરચના અનુસાર, જો તમે છેલ્લા અઠવાડિયે પાછા લાગે છે,
તે કહેતા જ છે પૂર્ણાંક ઉંમરના ઓપન કૌંસ કંઈક,
અને પછી કંઈક ત્યારબાદ.
તેથી શું આના જેવો નથી?
ચાલો ખરેખર એક ચિત્ર દોરવા દો.
તેથી જો તમે મુખ્ય સાથે આ કાર્યક્રમ ચલાવો ત્યારે બે દલીલો અંદર વ્યાખ્યાયિત કર્યા
તે કૌંસ, તમે અનિવાર્યપણે ઓછામાં ઓછા બે ટુકડા છે
મેમરી તમને આપ્યો હૂડ નીચે.
એક, આ લંબચોરસ તરીકે ખેંચે હું પડશે તરીકે, argc કહેવાય રહ્યું છે.
અને માત્ર એક ઝડપી રીકેપ છે, argc ની માહિતી પ્રકાર શું છે?
તેથી તે પૂર્ણાંક છે.
તેથી એક નંબર રહ્યું છે argc-- વળાંકમાં જાઓ
બહાર દલીલ ગણતરી માટે વપરાય છે.
દરમિયાન, હું એક એરે તરીકે argv દોરવામાં કર્યું છે.
અને હું ખરેખર ખબર નથી તે જ હશે કે કેવી રીતે લાંબા,
તેથી આજે હેતુઓ માટે ડોટ ડોટ ડોટ.
કેટલાક લંબાઈ વિચાર કરી શકે છે.
પરંતુ હું અહીં ચિત્રમાં છે ઓછામાં ઓછા ચાર લંબચોરસ.
જેથી સ્ટોર્સ મેમરી એક ભાગ argv શબ્દમાળા શબ્દમાળા શબ્દમાળા ડોટ ડોટ કોઈ,
અને argc માત્ર એક ભાગ છે પૂર્ણાંક માટે મેમરી.
>> તેથી હવે, ચાલો થોડી વધુ ચોક્કસ હોય છે.
, હું શબ્દમાળાઓ હોય ત્યારે આ એરે કહેવાય
argv, હું તેમને વિચાર કરવા માંગો છો વ્યક્તિગત રીતે, માત્ર છેલ્લા અઠવાડિયે જેમ,
અમે સંકેત ઉપયોગ જઈ રહ્યાં છો argv કૌંસ 0 જેવા
પ્રથમ વસ્તુ એક એરે વિચાર.
Argv કૌંસ 1 વિચાર તેથી આગળ બીજી વસ્તુ છે, અને.
કી અહીં અમે હજુ પણ 0 છો છે indexed-- અમે હજુ પણ 0 થી ગણતરી કરી રહ્યાં છો.
તેથી હવે ખરેખર ચાલો આ કંઈક મૂકો.
હું કહેવાય કાર્યક્રમ કમ્પાઇલ હતા હેલો હેલો ડોટ કો તરીકે ઓળખાતી ફાઈલ છે,
અને પછી હું કે કાર્યક્રમ ચલાવો કોઈ સાથે હેલ્લો સ્લેશ,
મારા કોમ્પ્યુટર, મારા લેપટોપ શું કરે છે, હૂડ નીચે જેમ દેખાય છે
હું કોઈ રન ક્ષણ હેલો સ્લેશ અને Enter દબાવો?
વેલ, આ કદાચ છે અમે વર્ણન શકે છે
તમારા કમ્પ્યુટરની સામગ્રી તરીકે મેમરી, અથવા ની RAM રેન્ડમ એક્સેસ મેમરી.
અન્ય શબ્દોમાં, કમ્પ્યુટર, કોઈક જાદુઇ તમારા માટે,
argc માં નંબર 1 મૂકે છે, ઉર્ફ argcount, અને તે શાબ્દિક શબ્દમાળા મૂકે
હેલ્લો argv કૌંસ 0 માં.
હું કોઈ વિચાર, પ્રમાણિકપણે, શું છે argv કૌંસ માં 1 અથવા 2 અથવા 3,
વપરાશકર્તા નથી કારણ કે જો , હેલ્લો ઉપરાંત કંઈપણ લખ્યો
અમે આ ધારે રહ્યા છીએ મોટા ભાગે કચરો કિંમતો છે,
તેથી વાત કરવા માટે.
મેમરી તે હિસ્સામાં અસ્તિત્વ ધરાવે છે, પરંતુ તે અમને અપ નથી
કારણ કે, તેમને જોવા માટે આ argcount માત્ર છે.
>> હવે દરમિયાન, હું તો અન્ય કાર્યક્રમ ચલાવો લખો,
વધુ યોગ્ય રીતે આદેશ છે, જે સીડી, તમારા ખીલેલું prompt-- cd ખાલી જગ્યા માં
હું અસરકારક રીતે કે ચલાવો ત્યારે Dropbox--, એ CD કાર્યક્રમ ચલાવવા છે, argc,
મારા કમ્પ્યુટર મેમરી ની અંદર, માટે છે સૌથી briefest બીજા નંબર 2.
અને પછી argv કૌંસ ઓ છે CD, argv કૌંસ 1, ડ્રૉપબૉક્સ છે
અને પછી અલબત્ત આદેશ પૂર્ણ કરે છે, તેથી આ મેમરી બધા
અનિવાર્યપણે દૂર જાય છે અને કંઈક બીજું માટે વપરાય છે.
અને તે હું કહી શા માટે છે બીજા માત્ર એક વિભાજીત.
>> દરમિયાન, અમે mkdir pset2 કરો તો, ચિત્ર, લગભગ એ જ લાગે છે
પરંતુ argv અંદર વિવિધ શબ્દમાળાઓ સાથે.
હું હેલો રણકાર આડંબર કરો તો હેલો ડોટ કો, જ વિચાર.
વધુ સામગ્રી માટે ભરવામાં આવે છે argv, અને argc, અલબત્ત, 4 છે.
તેથી અન્ય શબ્દોમાં, પણ આ એરે છતાં
કેટલાક, કોઈ કોઈ કોઈ હોઈ શકે ચલ લંબાઈ, તેથી વાત કરવા માટે
તમે હંમેશા તે જ્યાં અંત ખબર argc તમને કહી રહ્યું છે, કારણ કે છે
શું બિંદુએ તમે રોકવા પડે છે argv માં તત્વો જોઈ.
તમે માત્ર ચાર જોઈ શકો છો આ કિસ્સામાં કુલ.
>> તેથી આપણે હવે પર એક નજર કરીએ, કદાચ, એક સરળ કાર્યક્રમ.
માત્ર હેલ્લો કહે છે કે એક Zamyla જેમ કોઈને માટે.
તેથી હું એક કાર્યક્રમ લખવા જઈ રહ્યો છું દાવો માત્ર એક ક્ષણ કે જે મારફતે હું કરી શકે
પછી હું માંગો છો હેલ્લો જગ્યા Zamyla, અને મારા કાર્યક્રમ કંઈક છાપે
જેવા સુપર સરળ "હેલો, Zamyla."
હવે ભૂતકાળમાં અમે GetString ઉપયોગ કર્યા.
ભૂતકાળમાં, તો પણ તેથી તમે પ્રોગ્રામિંગ કરવા માટે નવા છો
મતભેદ તમે ચાબુક શકે છે GetString ઉપયોગ કરે છે કાર્યક્રમ
અને પછી printf વાપરે Zamyla માટે મહત્તમ કહે છે.
પરંતુ આ સમય GetString ઉપયોગ ન કરીએ.
મને બદલે Appliant જાય અને પ્રમાણભૂત હું ઓ ડોટ ક સમાવેશ નથી.
મને પણ CS50 ડોટ ક સમાવેશ કરો.
હવે મુખ્ય પૂર્ણાંક, અને હવે હું છું આજે રદબાતલ કરવા જઇ નથી.
તેના બદલે, હું પૂર્ણાંક argc કરવા જાઉં છું શબ્દમાળા argv ઓપન કૌંસ બંધ કૌંસ,
સંખ્યાબંધ સ્પષ્ટ નથી.
અને હવે અહીં મારા કરવું કહેવાતા છે.
હું હવે કરવા જાઉં છું હું છું, છે વિશ્વાસ એક લીપ એક બીટ કરવા જઇ,
હું વપરાશકર્તાની ધારે જાઉં છું યોગ્ય રીતે આ કાર્યક્રમ વાપરવા માટે જવાનું,
અને હું માત્ર જાઉં છું હેલ્લો printf% SN નથી.
તેથી કશું નવું.
પરંતુ હવે હું ગમે શબ્દ મૂકેલ આ કાર્યક્રમના નામ પછી વપરાશકર્તા પ્રકારો.
તેથી હું Zamyla હેલ્લો જગ્યા કરો તો, હું કોઈક પ્રોગ્રામ વપરાશ કરવા માંગો છો
અવતરણ ચિહ્નો પૂરાં કરવાં "Zamyla." ઉદ્ધત તેથી હું મારા દલીલ વેક્ટર માં જઈ શકે છે,
મારા શબ્દમાળાઓ એરે, અને આદેશ છે, ફરી, હેલ્લો જગ્યા, Zamyla હતી
શું નંબર હું માંગો છો અહીં argv માં મૂકી?
પ્રેક્ષક: 1.
ડેવીડના MALAN: 1, કારણ કે કૌંસ 0 બહાર વળે
આ પ્રયત્ન રહ્યું છે કાર્યક્રમ નામ આપણે જોયું, છે.
તેથી કૌંસ 1 પ્રથમ શબ્દ છે હું કે, વપરાશકર્તા, લખ્યો છે.
હું આગળ વધો અને આ સેવ જાઉં છું.
હું મારા ફોલ્ડર માં જાઓ જાઉં છું જ્યાં હું આ ફાઈલ મૂકવામાં કર્યું છે.
હું હેલો 3 બનાવવા કરવા જઇ રહ્યો છું.
કોમ્પ IO માતાનો ઠીક.
હેલ્લો Zamyla દાખલ કરો.
હું ખોટું શું કર્યું?
હું આશ્ચર્ય દ્વારા પકડવામાં આવ્યો હતો મારી ત્યાં માત્ર એક ક્ષણ માટે.
હું ખોટું શું કર્યું?
>> પ્રેક્ષક: નામ.
>> ડેવીડના MALAN: આ ફાઇલના ખરેખર hello3.c કહેવાય છે.
અને હું માત્ર માટે તે કર્યું સુસંગતતા, અમે કર્યું છે, કારણ કે
આ હતી hello.c માતાનો ઓનલાઈન કોડ માં છેલ્લા.
તેથી આપણે આ હેલ્લો ઠીક દો કૌંસ આડંબર 3 Zamyla.
દાખલ કરો.
અને હવે અમે હેલ્લો Zamyla છે.
દરમિયાન, હું આ ફેરફાર કરી શકો છો રોબ, અથવા ખરેખર અન્ય કોઇ શબ્દ છે.
>> પરંતુ એક ખૂણે કેસ વિચાર કરીએ.
જો તમે શું થશે શું આશા રાખી શકે છે હું કોઈની નામ લખો નથી?
>> પ્રેક્ષક: ભૂલ.
>> ડેવીડના MALAN: ભૂલ કદાચ અમુક પ્રકારના ઓફ.
માતાનો જોવા દો.
દાખલ કરો.
નલ.
તેથી printf ખરેખર કરવામાં આવી રહી છે અમને થોડી રક્ષણાત્મક
અહીં, અને શાબ્દિક ઓપન કૌંસ છાપવા નલ પરંતુ ખરાબ પણ વસ્તુઓ થઇ શકે છે.
અને માત્ર નિદર્શન કંઈક તમે સંપૂર્ણપણે
ન જોઈએ, ચાલો જવા દો અહીં અને આસપાસ poking શરૂ કરો.
અધિકાર?
હું ખબર હોય કે ચિત્રમાં મેમરી, અનિવાર્યપણે આ છે
argv કૌંસ 1 Zamyla, argv છે કૌંસ 0 હેલ્લો છે, અથવા હેલ્લો -3.
શું કૌંસ 2 માં છે?
તેથી હું કે જવાબ કરી શકો છો અધિકાર, મારી જાતને પ્રશ્ન?
હું માત્ર એક 2 માટે 1 બદલી શકો છો.
હું હવે, 3 હેલો પુનઃકમ્પાઈલ કરી શકો છો ./hello3 માં ઝૂમ અને Enter દબાવો દો.
ઓહ.
કોઈ કંપની માર્ક.
રસપ્રદ.
તેથી તે પ્રકારના માટે ઠંડી છે અહીં છે બીજું શું જુઓ.
>> તેથી બીજું શું મારા લેપટોપ ની અંદર છે?
માતાનો કૌંસ 3 સાથે તેને સંગ્રહો છે.
હેલ્લો -3, hello3 કરો.
વિચિત્ર.
અને હવે આપણે ખરેખર bold-- 50 વિચાર કરીએ.
જેથી ઊંડા ખરેખર ડાઇવિંગ છે મારા કમ્પ્યુટર મેમરીમાં.
50 નિર્દેશિકાઓની માં.
તેથી હેલો 3 હેલ્લો -3 બનાવે છે.
વિચિત્ર.
બધા હક છે, હવે હું માત્ર છું અવિચારી બનશે.
માતાનો 5,000 પર જઈએ.
અધિકાર છે.
તેથી મને પુનઃકમ્પાઈલ દો.
હેલ્લો -3, hello3 કરો.
બરાબર.
તમે કેટલાક હવે, ત્યાં કદાચ બંધ રહ્યા પ્રકાશ ગોળો છે.
કેટલી તમે હોય છે પહેલાં આ સંદેશો જોવા મળે?
બરાબર.
તેથી, શા માટે?
>> ઓડ્સ are-- અને વિવિધ છે આ કારણ બની શકે છે કે જે વસ્તુઓ,
અને સ્પષ્ટ રીતે તમે સારા છો company-- અમે સ્પષ્ટ છે
કહેવાય છે તે કારણે સેગ્મેન્ટેશન ક્ષતિમાં.
અને આજે માટે લાંબા વાર્તા ટૂંકા, હું મેમરી એક સેગમેન્ટ સપાટીએ બંધ રહ્યો હતો છે
હું ન હોવી જોઇએ છે.
જ્યાં એક સેગમેન્ટમાં માત્ર એક ભાગ અર્થ એ થાય મેમરી હું ન હોવી જોઇએ છે.
હવે કમ્પ્યુટર કે ગેરન્ટી તો હું હું argv સ્પર્શ કરી શકે છે કે ./helloZamyla ચલાવો
કૌંસ 0 અને argv કૌંસ 1 છે.
પરંતુ argc કિંમત 2, કે હું છું એનો અર્થ એ થાય છે માત્ર તે સન્માન જેવું છે allowed--
સ્પર્શ સિસ્ટમ કૌંસ 0 અને કૌંસ 1.
હું કોઇ પણ દૂર જાઓ, છે સંપૂર્ણપણે ત્યાં મેમરી હોઈ ચાલે.
મારી રેમ શારીરિક અસ્તિત્વમાં કમ્પ્યુટર માં.
પરંતુ જે છે તે જાણે છે?
ખરેખર, હું ઘણી ચાલી રહ્યો છું એક સમયે કાર્યક્રમો.
હું નથી તો હું seen-- હોય શકે છે આ Appliant પર આમ
પરંતુ મારા મેક અથવા PC-- પર હું પડી શકે છે ઇમેઇલ સમાવિષ્ટો જોવા.
હું ત્વરિત જોઈ હોય શકે સંદેશ મેં તાજેતરમાં મોકલવામાં કર્યું છે.
હોઈ શકે છે જે કંઇ મેમરી આસપાસ વિલંબિત
માર્ગ દ્વારા ઍક્સેસ હોઈ શકે છે આ મનસ્વી ચોરસ કૌંસ નોટેશનમાં.
અથવા, ખરાબ હજુ સુધી, તમે હોઈ શકે છે મારા કોઈપણ મળી
મેં તાજેતરમાં, માં લખેલા એક કે છો કે કાર્યક્રમ મેમરીમાં સ્ટોર કરી હતી, જેથી
મને સત્તાધિકારીત, અને પછી માત્ર પ્રકારની તે છોડી
રેમ હું કાર્યક્રમ બહાર નીકળવા સુધી.
>> અને ખરેખર, આ એક છે ભય અને એક સત્તાઓ
સી જેવી ભાષા ઉપયોગ તમે નિરંકુશ વપરાશ હોય છે
સમગ્ર સમાવિષ્ટો માટે એક કાર્યક્રમ મેમરી,
અને શું ખરાબ ગાય્ઝ કરી શકો છો પણ તે cases-- શું
ખાસ કરીને જ્યારે અમે વેબ પ્રોગ્રામિંગ મેળવવા
આ સત્ર ઓવરને તરફ, અમે પડશે આસપાસ થેલી, કોથળી છે આ topic-- ફોટાઓની,
સંભવિત, કોઈ કમ્પ્યુટરની છે મેમરી અને આવા વિચિત્ર વસ્તુઓ શોધવા
આપણે ત્યાં જોયું.
અથવા ખરાબ પણ હજુ સુધી, પાસવર્ડ્સ કે તે અથવા તે પછી ખરાબ વસ્તુઓ કરવા માટે ઉપયોગ કરી શકો છો.
>> તેથી સ્પષ્ટ રીતે હું આ કરી ન જોઈએ વિચિત્ર વસ્તુઓ થાય છે શરૂ કરવા માટે છે.
ખરેખર, આ એક કાર્યક્રમ તૂટી જવા સાથે છે.
આ સમકક્ષ હશે વિન્ડોઝ મેક ઓએસ અથવા માં
એક કાર્યક્રમ વિન્ડો માત્ર અદ્રશ્ય થઈ.
એક અણધારી ભૂલ આવી છે.
આદેશ વાક્ય પર્યાવરણમાં અમે આ કંઈક જુઓ.
પરંતુ તે શા માટે છે, હું માત્ર સ્પર્શ છું છે મને સંબંધ નથી કે મેમરી.
>> તેથી આપણે આ એક સામે કોઈ રન નોંધાયો નહીં દો અલગ રીતે થોડો
અહીં આ કાર્યક્રમ જોઈ દ્વારા.
તેથી, ફરી, હાડપિંજર અમે અગાઉ જોયું કે
અને હું આ સમય પૂર્ણાંક પ્રકાશિત કર્યું છે.
અને આ બધા સમય મુખ્ય છે ખરેખર નીચેની ફર્યા.
તેમ છતાં અમારા વ્યાખ્યાન મોટાભાગના અમે એક વાર ક્યારેય ઉપયોગ કર્યો ઉદાહરણો
મુખ્ય પણ આવો.
અમે હમણાં જ printf બંધ લખવા સર્પાકાર તાણવું અને તે છે.
પરંતુ મફત માટે, શું કમ્પાઇલર, તમારા માટે કરી રહ્યો
અસરકારક રીતે, તમારા માટે 0 પરત છે.
બહાર ફેંકે છે અને તે થોડી છે 0 સારી છે કે counterintuitive--.
તે સે દીઠ ખોટા અર્થ એ નથી.
0 સારી છે, અને કોઈપણ બિન 0 કિંમત, વિશ્વમાં નિર્ણય લીધો છે,
ભૂલ અર્થ કરી શકો છો.
તમે ક્યારેય મિશ્રિત છે તેથી જો તમારા કમ્પ્યુટર પર કંઈક,
અથવા કાર્યક્રમ તમારા પર મૃત્યુ પામ્યા છે અને તમે અમુક ભૂલભરેલા વિન્ડો મેળવેલ કર્યું
તમારી સ્ક્રીન પર, કહેતા ભૂલ 49 અથવા ભૂલ નકારાત્મક 23--
છે કે કેટલાક મોટે ભાગે મનસ્વી કિંમત પ્રોગ્રામર હાર્ડ કોડેડ છે કારણ કે
49 નકારાત્મક અથવા હકારાત્મક જેવી મૂલ્ય 23 કોઈ પણ સંખ્યા પ્રતિનિધિત્વ કરવા માટે, કબૂલ કરું છું,
4 અબજ શક્ય વસ્તુઓ એક કાર્યક્રમ છે કે ખોટું જાઓ શકે છે.
>> તેથી હું કેવી રીતે લાગી શકે છે આ લાભ મારી?
ઠીક છે, મને એક કાર્યક્રમ ખોલો હું અગાઉથી લખ્યું હતું કે,
અને ઓનલાઇન હેલો 4 કહેવાય આસપાસ થેલી, કોથળી.
અને તે સિવાય લગભગ સમાન છે તેની ભૂલ ચકાસણી કરવામાં થોડો મળ્યો હતો.
આ કિસ્સામાં, હું ફરીથી જાહેર કર્યું છે બે દલીલો લેવા તરીકે મુખ્ય,
પરંતુ આ સમય, લાઇન 17 પર, નોટિસ હું એક સેનીટી ચેક એક બીટ કરી રહ્યો છું.
હું ખાતરી કરો કે બનાવવા છું argc 2 બરાબર સમકક્ષ હોય છે.
તે છે કારણ કે જો કે, હું સુરક્ષિત રીતે કરી શકો છો એનો અર્થ એ થાય
માત્ર કૌંસ 0, પરંતુ કૌંસ 1 સ્પર્શ.
અને હું આગળ વધો અને છાપે, આ કિસ્સામાં, Zamyla અથવા રોબ
અથવા હું લખ્યો ગમે શબ્દ.
અને હવે માત્ર વિચાર વધુ યોગ્ય થોડું
હું નિશ્ચિતપણે પાછા જઈ રહ્યો છું 0 બધા સારી છે અર્થ છે.
કંઈ ખરાબ થયું.
>> પરંતુ સંમેલન દ્વારા, હું જાઉં છું 1 પરત, અથવા પ્રમાણિકપણે કોઈપણ બિન 0 કિંમત,
કંઈક ખોટું થયું છે.
હવે વપરાશકર્તા નથી જઈ રહ્યા છે ખરેખર શું થઈ રહ્યું છે નોટિસ.
ખરેખર હું આ ડિરેક્ટરીમાં જાઓ, અમે ઝૂમ અને હેલો 4 કરો
હું અપેક્ષા તરીકે હેલ્લો -4 Zamyla વર્તે.
પરંતુ હું બદલે લખો ન હોય તો કંઈપણ, કંઇ થાય તેમ લાગે છે,
પરંતુ તે તૂટી નથી.
અને હું તેના બદલે કંઈક કરો તો રોબ જેવી પ્રોક્ટોર છે
Thayer-- વહેંચણી માં મનસ્વી જાણકારી.
પરંતુ નોટિસ, argv 1, 2, 3, 4, અને 5 હવે મેમરી અસ્તિત્વમાં કરીશું.
તે, પણ, નથી શું છે મારા કાર્યક્રમ, અપેક્ષા
હું કે શું ચકાસાયેલ છે, કારણ કે argc સમકક્ષ 2 નથી અથવા સમકક્ષ હોય છે.
તેથી હવે હું આ સામે બચાવ છું.
>> હવે, એક અલગ તરીકે, અમે programmer-- અથવા બદલે અમે users--
0 અથવા 1 પરંતુ મદદથી જુઓ કે ક્યારેય સાધન, ડિબગર, અથવા અન્ય સાધનો કહેવાય
અમે પહેલાં જોશો લાંબા, તમે પ્રોગ્રામર
ખરેખર હોઈ શકે છે તે જોઈ શકો છો તમારા કાર્યક્રમ ની અંદર ખોટું થઈ રહ્યું.
>> તેથી, argc પર કોઈપણ પ્રશ્ન છે?
અરે વાહ.
>> પ્રેક્ષક: હું જોઈ કર્યું જ્યાં તેઓ અક્ષર થયું નથી, [અશ્રાવ્ય]
જેમ શબ્દમાળા સ્ટાર ડી જણાવ્યું હતું કે, અક્ષર ફૂદડી અલ્પવિરામ.
તેઓ અહીં સમકક્ષ હોય છે?
>> ડેવીડના MALAN: તેઓ છે.
પ્રશ્ન એ છે કે તેથી, તમારી પાસે ક્યારેક ક્યારેક જોવા મળે કાર્યક્રમો
નથી કે આ જેવી શબ્દમાળા argv કૌંસ કહે
પરંતુ તેના બદલે કંઈક કહેવું ચાર સ્ટાર argv કૌંસ ગમે છે.
પણ અન્ય છે તમે જોઈ શકો કે ચલો.
તેઓ ખરેખર સમકક્ષ છે.
હવે માટે, અમે આ છે તાલીમ વ્હીલ્સ જેવું
આ CS50 માં શબ્દમાળા સ્વરૂપમાં પર પુસ્તકાલય, પરંતુ માત્ર એક અઠવાડિયા માં
અથવા તેથી અમે તે દૂર રહ્યા છીએ એકસાથે અને ખરેખર અવરોધ
આ ચાર અને તારો શું જોવા હોય છે, અને તે મેમરી અનુલક્ષે કેવી રીતે
પ્રતિનિધિત્વ વધુ સામાન્ય રીતે.
તેથી અમે પાછા કે આવવું પડશે.
>> અમારા argv અથવા argc પર અન્ય પ્રશ્નો છે?
અરે વાહ.
પ્રેક્ષક: તે શા માટે પાછા હતી ભૂલ [અશ્રાવ્ય]?
ડેવીડના MALAN: તે કર્યું શા માટે ઓહ only-- ભૂલ પાછા!
અગાઉના કિસ્સામાં, જ્યારે અમે મેમરી આસપાસ futzing હતા,
શા માટે તે માત્ર એક ભૂલ પરત હતી હું ખરેખર એક મોટી નંબર લખ્યો છે?
લઘુ જવાબ અમે માત્ર નસીબદાર મળી છે.
સામાન્ય રીતે કહીએ, કમ્પ્યુટર હિસ્સામાં માં મેમરી ફાળવે,
અને તે મને એક મોટી પર્યાપ્ત ભાગ આપ્યો હું જણાયું વિના દૂર મળી
સ્પર્શ કૌંસ 2, કૌંસ 3, કૌંસ 50 પરંતુ જલદી હું દબાણ તરીકે
મારા નસીબ, હું બહાર ગયા મેમરીનો ભાગ ના સરહદો
ઓપરેટિંગ સિસ્ટમ મને આપ્યા હતા.
અને તે જ્યારે તે નીચે બાંધવામાં અને જણાવ્યું હતું કે,.
વિભાગીય ભૂલ.
અરે વાહ.
>> પ્રેક્ષક: કરે કેવી રીતે કોમ્પ્યુટર argc ની કિંમત જાણો છો?
>> ડેવીડના MALAN: કેવી રીતે કમ્પ્યુટર argc ની કિંમત જાણો છો?
તમે કાર્યક્રમ ચલાવો, ત્યારે તે કાર્યક્રમ, આ ખીલેલું પ્રોમ્પ્ટ પ્રકૃતિ દ્વારા,
ના એરે આપ્યો છે લખેલા હતા કે શબ્દો
પ્રોમ્પ્ટ પર, કે હતી પ્રોમ્પ્ટ પર લખ્યો.
અને તેથી તે તમારી ઓપરેટિંગ છે સિસ્ટમ અનિવાર્યપણે કે
તમારા માટે મુખ્ય દલીલો રચે.
જેથી આ સેવાઓ એક છે તમે વિચાર છે કે, જેવું ગુપ્ત
ના હૂડ નીચે ઓપરેટિંગ સિસ્ટમ.
અન્ય પ્રશ્નો છે?
અરે વાહ.
>> પ્રેક્ષક: કોર ડમ્પ શું અર્થ છે?
ડેવીડના MALAN: કોર ડમ્પ શું અર્થ છે?
જેથી આ બોલ પર કોઈ પ્રશ્ન છે.
અને મને પાછું જવા દો અહીં આ ડિરેક્ટરી.
અને તમે નોટિસ કરીશું કે હું ત્યાં એક નવી ફાઈલ છે.
તે ખરેખર કોર કહેવાય છે, અને તે છે છે ખરેખર સામાન્ય રીતે એક યોગ્ય કદના ફાઇલ.
તે અનિવાર્યપણે એક સ્નેપશોટ છે મારા કાર્યક્રમ મેમરી સમાવિષ્ટો
તે ક્રેશ થયું ત્યારે અથવા RAM.
અને આ ઉપયોગી થશે સંભવિત, નૈદાનિક રીતે,
અમે ભવિષ્યના વ્યાખ્યાન વાત એક વખત અને ડિબગીંગ વિશે વિભાગ,
તમે ખરેખર શું કરી શકો છો કારણ કે ડિજિટલ શબપરીક્ષણ ની સમકક્ષ
ફાઇલ પર બહાર આકૃતિ મદદ કરવા માટે તમે તમારા કાર્યક્રમ ખોટું શું.
અરે વાહ.
>> પ્રેક્ષક: આદેશ માં argc છે પોતે, અથવા તમે તેને કંઈપણ નામ કરી શકો છો?
>> ડેવીડના MALAN: સારા પ્રશ્ન.
, પોતે જ એક આદેશ argc છે અથવા તમે તેને કંઈપણ નામ કરી શકો છો?
તે ચોક્કસપણે એક આદેશ નથી.
તે માત્ર એક ચલ છે અથવા એક દલીલ નામ નામ,
અને તેથી સંપૂર્ણપણે અમે આ foo કહી શકે છે,
અમે હોય છે, જે આ બાર, કૉલ કરી શકે આ ગો ટુ શબ્દો કે કમ્પ્યુટર હોઈ
વૈજ્ઞાનિક જાય છે.
પરંતુ સંમેલન દ્વારા, અમે argc અને argv ઉપયોગ કરે છે.
પરંતુ તે માત્ર એક માનવ છે સંમેલન, કંઇ વધુ.
અધિકાર છે.
તેથી બહાર વળે છે, હું કરી છે સફેદ lie-- એક બીટ કહી
અને પ્રમાણિકપણે, ભવિષ્યમાં, તમે જોશો અમે અન્ય સફેદ ખોટા કહેવાની કરવામાં આવ્યા છે.
પરંતુ હવે માટે, અમે જઈ રહ્યાં છો એક આ પાછા છાલ.
જ્યારે અગાઉ હું અહીં આ કિસ્સામાં હેલ્લો અથવા હેલ્લો -3 જેવો કાર્યક્રમ ચાલી હતી
Zamyla, અમે સમાવિષ્ટો હતી મારા લગભગ જેમ જોઈ કમ્પ્યુટરની મેમરી
આ.
પરંતુ શબ્દમાળા શું છે યાદ અપાવે છે.
અમે શું એક સપ્તાહ પહેલા કહ્યું શું શબ્દમાળા ખરેખર હૂડ નીચે છે?
પ્રેક્ષક: અક્ષરો અરે.
ડેવીડના MALAN: તે છે અક્ષરો એરે, અધિકાર?
તેથી અમે એક એરે હોય શકે છે શબ્દમાળાઓ, પરંતુ, બદલામાં, શબ્દમાળા
અક્ષરો ઝાકઝમાળ છે.
હું ખરેખર કરવા માંગો છો તેથી જો હું આ ચિત્ર ડ્રો જ્યારે ગુદા,
હું ખરેખર ચિત્રકામ જોઈએ તે થોડી વધુ આ જેમ,
જેમાં આ દરેક માં મારા argv એરે નિર્દેશિકાઓની,
સમગ્ર શબ્દમાળા પોતે છે પોતે કે જે એરે માં છે.
અને હવે સફેદ જૂઠ આજે આપણે કહી રહ્યા છીએ
ચિત્ર નથી છે તદ્દન આ જેમ દેખાય છે.
હકીકતમાં, નાના ચોરસ છે મોટા લંબચોરસ સામાન્ય રીતે બહાર
ત્યાં.
પરંતુ અમે લાંબા તે પહેલાં પાછા કે આવવું પડશે.
પરંતુ આ હેલ્લો બેકસ્લેશ 0 છે કે વિશિષ્ટ અક્ષર કે છે
શબ્દમાળા ઓવરને demarcates, અને અમે અન્ય એક પછી મળી છે
Zamyla નામ.
તેથી આ શું અર્થ છે?
>> વેલ, મને આગળ જાઓ અને અન્ય બે ઉદાહરણો ખોલો
ઓનલાઈન ઉપલબ્ધ છે કે છે.
એક argv1.c કહેવામાં આવે છે અને અન્ય argv2 છે.
તે એક સુપર સરળ કાર્યક્રમ છે કે છેલ્લા કાર્યક્રમો અલગ છે
કે હવે હું ઉપયોગ કરું છું argc અને અહીં argv.
અને હવે હું લૂપ માટે સાથે સંકલિત છું argc સુધી પર હું થી 18 લીટી, = 0.
અને હું શું કરવા જાઉં છું અહીં કોડ આ વાક્ય સાથે?
ઇંગલિશ માં.
આ દેખીતી રીતે argc ઉપયોગ દર્શાવે છે.
પરંતુ ઇંગલિશ માં, શું કરે છે હું આ કાર્યક્રમ ચલાવવા જો તે કરી?
અરે વાહ?
>> પ્રેક્ષક: તે છાપી રહ્યું છે તમારા તમે ઇચ્છો તરીકે ઘણા વખત સ્ક્રીન.
ડેવીડના MALAN: ચોક્કસ.
તેથી ગમે તે શબ્દો હું તે છે, પ્રોમ્પ્ટ પર લખો
નીકળી જવું રહ્યા લાઇન દીઠ મને તેમને એક.
તેથી આપણે આગળ વધીશું અને આ કરવા દો.
મને મારા ડિરેક્ટરીમાં જાઓ અને argv1 ./argv1 કરી નથી.
અને હવે, ચાલો સરળ રાખવા દો.
પ્રથમ પર કશું કરી દો.
તે એક વસ્તુ છાપે હતી, અને કે ખરેખર કાર્યક્રમના નામ છે,
કે કૌંસ 0 છે, કારણ કે.
હવે હું foo કહે છે, તે શું ચાલી રહ્યું છે તે બે, અને હું foo બાર કહે છે,
તે તે ત્રણ વસ્તુઓ કહી રહ્યું છે.
હવે કદાચ કંઈક રસપ્રદ છે.
પરંતુ તે argv યાદ શબ્દમાળાઓ ઝાકઝમાળ છે,
પરંતુ શબ્દમાળા અક્ષરો ઝાકઝમાળ છે, તેથી અમે એક ઉત્તમ અપ વસ્તુઓ લઈ શકો છો
અને તે મૂળભૂત અરજી તર્ક અને કોડ બનાવે છે
વાતનો સ્વીકાર કરૂ છું, થોડી વધુ ભેદી લાગે છે.
પરંતુ એક પુનરાવર્તિત કર્યા લૂપ, સમાન કંઈક
તમે મારિયો માંથી યાદ શકે છે શું છે, દાખલા તરીકે, જો તમે તેને આ રીતે કર્યું હતું.
>> તેથી હવે હું છું, 19 લીટી પર નોટિસ ફરીથી મારા દલીલો પર વારો,
0 થી પર argc છે.
અને હવે લીટી માં હું 21-- છું છેલ્લા સપ્તાહના યુક્તિ ઉધાર
હું શું ચકાસણી છું argv કૌંસ હું લંબાઈ.
હું એ કે જવાબ સ્ટોર છું.
અને પછી હું જ ના પર સંકલિત છું જ 0 થી આરંભ થયેલ છે n એ, સુધી.
તેથી, ગણતરી માટેની રીત.
જો તમે હોય, તો તમે, હું ઉપયોગ કર્યો છે એકવાર પુનરાવર્તિત લૂપ, તમે ફરી હું ઉપયોગ કરી શકતા નથી
અન્યથા તમે સંભવિત, clobber પડશે, આંતરિક લૂપની બહાર કિંમત.
તેથી હું સંમેલન દ્વારા જ ઉપયોગ કરું છું.
અમે કે ઉપયોગ કરી શકે છે.
તમે કે કરતાં વધુ હોય, તો તમે કદાચ સામાન્ય રીતે, ખૂબ જ માળો છે.
પરંતુ હવે, મારા printf નોટિસ વાક્ય થોડા અલગ છે.
હું% s છાપવા છું, હું છું ,% C છાપવા જે, અલબત્ત,
એક કોલસો બનાવો માટે એક પ્લેસહોલ્ડર છે.
>> અને હવે આ વાક્યરચના નોટિસ.
ન્યૂ.
અમે પહેલાં તે જોઇ ન હોય.
પરંતુ તાર્કિક, આ માત્ર અર્થ એ થાય argv માં ઇથ શબ્દમાળા મેળવવા
અને શું jth વિચાર?
પ્રેક્ષક: અક્ષર.
ડેવીડના MALAN: કે જેઓ શબ્દમાળા માં અક્ષર.
તેથી ચોરસ કૌંસ ઉપયોગ કરીને ચોરસ કૌંસ દ્વારા અનુસરવામાં,
આ પ્રથમ ડાઇવિંગ છે argv માતાનો શબ્દમાળાઓ માં,
અને પછી બીજા જ સાથે ચોરસ કૌંસ
ના અક્ષરો માં ડાઇવિંગ છે argv માં ચોક્કસ શબ્દમાળા.
અને પછી, માત્ર સારા પગલા, હું અહીં નવી લાઇન છાપવા છું.
તેથી હવે દો મને આગળ વધો અને ખોલો સહેજ મોટા વિન્ડો
તેથી અમે ક્રિયામાં આ જોઈ શકે છે.
મને તે ફોલ્ડર માં જાઓ.
અને હવે બનાવવા કરી argv-2-- argv -2 કરો whoops--, ./argv 2.
દાખલ કરો.
અને તે થોડો મુશ્કેલ છે ઊભી વાંચવા માટે,
પરંતુ તે ખરેખર નામ છે ખાલી લીટી દ્વારા અનુસરવામાં કાર્યક્રમ.
હવે મને આગળ વધો અને foo કરવા દો.
એ જ રીતે હાર્ડ વાંચી છે, પરંતુ તે છે માટે ખરેખર લાઇન દીઠ એક અક્ષર છાપવા.
હું બાર કરો તો, તે હવે છે વાક્ય દ્વારા તે વાક્ય છાપવા.
તેથી અહીં takeaway ખૂબ જ નથી વાહ, આ સુઘડ નવા યુક્તિ જોવા, કે
જ્યાં તમે સમાવિષ્ટો પર વિચાર કરી શકો છો ઝાકઝમાળ ચોક્કસ અક્ષરો,
પરંતુ અમે આ મૂળભૂત વાત કરી રહ્યાં છે કેવી રીતે એક એરે માં ઈન્ડેક્સીંગ જેવા વિચારો,
અને પછી એક માં ક્રમાંકિત કે એરે હતું કે એરે,
અને માત્ર એ જ વિચારો અરજી સહેજ વધુ આધુનિક ઉદાહરણો.
પરંતુ મૂળભૂત ખરેખર નથી પણ છેલ્લા અઠવાડિયે, કારણ બદલાય છે.
>> હવે આ, સમયસર જેવું છે કે માં, સપ્તાહ શૂન્ય માં, યાદ
અમે આ જેવી ફોન પુસ્તક સાથે રમી હતી.
અને આ દેખીતી રીતે છે, તેમ છતાં કાગળ ભૌતિક ટુકડાઓ,
તમે પ્રકારની વિચાર કરી શકો છો એક એરે તરીકે એક ફોન પુસ્તક.
તમે તો ખરેખર, reimplement માટે આ ટુકડાઓ કાગળ આ ટુકડાઓ
કમ્પ્યુટર માં, કદાચ તમે કંઈક ઉપયોગ કરશે
ઝાકઝમાળ તે તમામ સંગ્રહવા માટે જેમ એક બધી રીતે ના નામો અને નંબરો
ઝેડ મારફતે તેથી આ કારણ કે સરસ છે તે અમને તક પરવાનગી આપે છે,
તમે કેવી રીતે કદાચ કદાચ, ધ્યાનમાં ખરેખર તે કંઈક અમલ.
અહીં દરવાજા શ્રેણીબદ્ધ સાથે.
હું could-- તેથી જો આપણે એક જરૂર પર આવે છે સ્વયંસેવક.
માતાનો જોવા દો.
એક અજાણ્યા ચહેરા કદાચ, કદાચ અજાણ્યા ચહેરા.
કેવી રીતે નારંગી માં વિશે શું?
અહીં.
નારંગી શર્ટ, પર આવે છે.
>> હવે અને ચાલ આગળ જાઓ બાજુ પર આ દરવાજા,
એક ક્ષણ માટે જે રીતે બહાર આ ખસેડો.
તમારું નામ શું છે?
>> અજય:
>> ડેવીડના MALAN: અજય.
ડેવિડ.
તમને મળીને સરસ.
અધિકાર છે.
તેથી અમે આ છ પાછળ છે સ્ક્રીન પર ડિજીટલ દરવાજા
આ પર અથવા બદલે, સાત દરવાજા નંબરો સંપૂર્ણ જથ્થો સ્ક્રીન.
અને હું તમને કંઈ કહ્યું છે માં advance-- સંમત?
અજય: અગાઉથી કંઈ નથી.
ડેવીડના MALAN: બધા હું તમને કરવા માંગો છો હવે મારા માટે શોધવા માટે છે, અને અમારા માટે,
ખરેખર, આ નંબર 50, એક સમયે એક પગલું.
>> અજય: સંખ્યા 50?
>> ડેવીડના MALAN: આ નંબર 50.
અને તમે શું છે ઉજાગર કરી શકે છે આ દરવાજા દરેક પાછળ
ફક્ત એક આંગળી સાથે સ્પર્શ દ્વારા.
તેને ધુત્કારી કાઢવું. [હાસ્ય]
>> [વધાવી]
>> ખૂબ જ સારી થાય.
બરાબર.
અમે કોઈ ભેટ છે અહીં તમારા માટે ઇનામ.
ફિલ્મો ના ચૂંટેલા અમે છેલ્લા અઠવાડિયે ચર્ચા કરી છે.
>> અજય: ઓહ, માણસ.
ઓહ, હું સ્પેસબોલ્સ ક્યારેય જોઇ ​​છે.
>> ડેવીડના MALAN: સ્પેસબોલ્સ.
અધિકાર છે.
તેથી માત્ર એક ક્ષણ પર ધરાવે છે.
ચાલો આ કરી દો How-- એક ભણવામાં હોશિયાર ક્ષણ
તમે કેવી રીતે વિશે જવા હતી સંખ્યા 50 શોધવા?
અજય: હું રેન્ડમ પસંદ કર્યું.
ડેવીડના MALAN: તેથી તમે પસંદ કર્યું રેન્ડમ અને નસીબદાર મળી.
અજય: હા.
ડેવીડના MALAN: ઠીક છે.
ઉત્તમ.
તેથી હવે, જો તમે ન હતી નસીબદાર, શું બીજું મેળવેલ
આ દરવાજા પાછળ થયું છે શકે?
હું આગળ જાઓ તો અને અહીં આ નંબરો જાહેર,
તેઓ ખરેખર રેન્ડમ ક્રમમાં છે.
અને શ્રેષ્ઠ તમે કરી શકે છે કરવામાં આવે છે, પ્રમાણિકપણે, આખરે, છે
સૌથી ખરાબ કિસ્સામાં, તેમને બધા ચકાસણી.
તેથી જો તમે સુપર નસીબદાર મળી જે અમે એક અલ્ગોરિધમનો કૉલ કરશો શું નથી.
હા, અભિનંદન.
તમે કરી શકે તો હવે, રમૂજ મને let's--.
અહીં આ ટેબ પર જાઓ.
અને અહીં સ્પષ્ટ માં નંબરો છે રેન્ડમ ક્રમમાં હોય તેમ લાગે છે,
અને તેઓ હતા.
પરંતુ હવે હું તેના બદલે દાવો જો આ દરવાજા પાછળ
અલગ પાડવામાં આવે છે કે નંબરો છે.
ધ્યેય હવે પણ છે અમને સંખ્યા 50 છે.
પરંતુ ઍલ્ગરિધમનો તે કરવા માટે, અને તમે તે વિશે રહ્યા છીએ કેવી રીતે અમને જણાવો.
તમે તેને શોધી અને, જો તમે ફિલ્મ રાખો.
તમે તેને, તો તમે તેને પાછા આપી શોધી નથી.
અજય: તેથી હું અંત તપાસ જાઉં છું પ્રથમ, there's-- નક્કી કરવા માટે જો
[હાસ્ય અને વધાવી]
ડેવીડના MALAN: અહીં તમે જાઓ.
માતાનો એક પર એક નજર અજય માતાનો પૂરોગામી,
તદ્દન તરીકે નસીબદાર ન હતી જે સીન.
ઠીક છે, અહીં તમારા કાર્ય છે, જેથી સીન, નીચેની છે.
હું આ પાછળ છુપાયેલ છે દરવાજા સંખ્યા સાત,
પરંતુ આ દરવાજા કેટલાક દૂર tucked તેમજ અન્ય બિન નકારાત્મક નંબરો છે.
અને તમારા ધ્યેય આ લાગે છે માત્ર એક એરે તરીકે નંબરો ટોચ પંક્તિ.
અમે ટુકડાઓ માત્ર એક ક્રમ છો તેમની પાછળ સંખ્યામાં કાગળ.
અને તમારા ધ્યેય માત્ર ટોચ મદદથી છે એરે અહીં મને સંખ્યા સાત શોધો.
અને અમે તે પછી ક્રિટિક જવું છે તમે તે કરી વિશે જવા માટે કેવી રીતે.
અમને સંખ્યા સાત કરો શોધો.
નં
5, 19, 13.
તે એક યુક્તિ પ્રશ્ન નથી.
1.
આ બિંદુએ તમારી સ્કોર ખૂબ નથી સારી છે, તેથી તમે પણ ચાલુ રાખવામાં શકે છે.
3.
પર જાઓ.
પ્રમાણિકપણે, હું મદદ નથી, પરંતુ આશ્ચર્ય નથી કરી શકો છો શું તમે પણ વિશે વિચારી રહ્યાં છો.
>> સીન: હું માત્ર ટોચ પંક્તિ થી લઈ શકો છો.
ડેવીડના MALAN: ફક્ત ટોચ પંક્તિ.
તેથી જો તમે ત્રણ ડાબી મળી છે.
તેથી મને 7 શોધો.
>> [પ્રેક્ષક સૂચનો શાઉટ]
તેથી તે બંને સુંદર હતા ખૂબ જ અલગ અલગ કારણોસર.
તેથી આ છે જ્યાં અમે એક ક્ષણ પહેલા બોલ બાકી,
અને અહીં કી સૂઝ આ દરવાજા નંબરો હતી
તેમની પાછળ કે આદર્શ, સૉર્ટ હતા જેના માટે takeaway તમે કરી શકે છે
માં મૂળભૂત વધુ સારી આ બીજા ઉદાહરણ
અને, ખરેખર, કે સીન માતાનો હતી રેન્ડમ નંબર સાથે પ્રથમ પ્રયાસ
જેમ પહેલાં પરંતુ જલદી આ નંબરો અલગ પાડવામાં આવે છે, કારણ કે
ફોન પુસ્તક જેમ જ, તમે દેખીતી રીતે શું કરી શકો છો?
અથવા તમે કેવી રીતે છે કે જ્ઞાન લાભ કરી શકો છો?
અરે વાહ.
>> પ્રેક્ષક: તમે [અશ્રાવ્ય] હાફવે જાઓ.
ડેવીડના MALAN: અરે વાહ.
ચોક્કસ.
તેથી અજય પ્રારંભિક વૃત્તિ હતી હું યાદ છે, અંત તપાસ,
અને પછી અમે પ્રકારની સમાપ્ત ઝડપથી ઉદાહરણ.
અમે શરૂ પરંતુ જો આ વધુ કરવા માટે પદ્ધતિસરની તે રેખાઓ સાથે,
પરંતુ કદાચ શરૂ મધ્યમ, તેઓ અલગ પાડવામાં રહ્યાં છો કારણ કે,
જલદી અમે જાહેર તરીકે નંબર 16, અમે તેથી ખબર
અને અમે તેનો બરાબર કરવા દો તેથી ખબર 50 કે, આજે કિસ્સામાં,
જમણી પ્રયત્ન મળ્યું છે.
તેથી જેમ સપ્તાહ શૂન્ય જ્યારે અમે અડધા માં ફોન પુસ્તક tore
અને અડધા દીધો દૂર સમસ્યા અહીં જ વિચાર.
અમે આ અડધા ફેંકવું કરી શકો છો આ સમસ્યા દૂર.
અને કદાચ શું તમે ઍલ્ગરિધમનો કરી શકે છે,
તમે 50 હોવા જ જોઈએ ખબર છે કે એક વખત જમણી, તે ગમે ત્યાં છે,
મધ્યમાં, ત્યાં પ્રયાસ છે બાકીના દરવાજા.
અલબત્ત, 50 વધારે છે 42 કરતાં, તેથી અમે કરી શકો છો
આ બાકીના ફેંકવું દૂર સમસ્યા ક્વાર્ટર,
અને, અંતે, ઓળખવા 50 કંઈક.
પરંતુ માત્ર આ સાથે ફોન પુસ્તક, આ નંબરો
પહેલેથી જ અમને આપવામાં આવી હતી ક્રમમાં અમને નહીં જે
પ્રશ્ન સાથે, તમે કેવી રીતે કરવું ક્રમમાં માં વસ્તુઓ મળી?
અને, પ્રમાણિકપણે, તે કિંમત પર?
તે હોઈ એક વાત છે ફોન પુસ્તક આપ્યો
અને પછી શોધવા દ્વારા તમારા મિત્રો પ્રભાવિત અધિકાર ખરેખર ઝડપથી એક ફોન નંબર,?
એક શોધવા માટે 32 પૃષ્ઠો બહાર જબરદસ્ત 4 અબજ પૃષ્ઠો બહાર વ્યક્તિ,
અમે એક આત્યંતિક ઉદાહરણ હતું.
પરંતુ કેટલો સમય લઇ હતી વેરાઇઝન કે ફોન પુસ્તક સૉર્ટ?
તે અમને લેવા હતી કેટલો સમય આ સાત નંબરો સૉર્ટ?
કે અમે કર્યું છે કે એક પ્રશ્ન છે આમ અત્યાર સુધી સંપૂર્ણપણે અવગણના.
>> તેથી આપણે હવે આ પ્રશ્નનો જવાબ છે.
અને અમે હવે ફિલ્મો નથી, પરંતુ અમે કેટલીક તણાવ બોલમાં ધરાવે છે.
આઠ સ્વયંસેવકો કહે છે, તો અહીં અમને જોડાયા વાંધો નથી?
કેવી રીતે, ચાલો આગળ વધો અને કરવું તમે ચાર, અહીં તમે ત્રણ?
કેટલાક નવા ચહેરા મેળવો.
અને ત્યાં તમે ચાર?
અને માતાનો નથી પૂર્વગ્રહ દો હવે અહીં અને અહીં અંત પર નંબર આઠ.
પર આવો.
અધિકાર છે.
તેથી અમે અહીં છે શું તમે દરેક એક નંબર છે.
તમે જવા માંગો છો, તો આગળ, આ નંબર લે છે.
તમારું નામ શું છે?
>> આર્ટી: આર્ટી.
>> ડેવીડના MALAN: આર્ટી, ઠીક છે.
તમે નંબર 1 છો.
>> અમીન: અમીન.
ડેવીડના MALAN: અમીન.
ડેવિડ.
તમે નંબર 2 છો.
હું હાથ છે, આગળ વધો તમે કાગળ શીટ્સ,
સંગીત સામે પોતે અપ લાઇન ત્યાં સુધી એ જ ક્રમમાં રહે છે.
>> યાત્રા: હાય, એન્ડી.
>> ડેવીડના MALAN: એન્ડી, તે તમે જોવા માટે સરસ છે.
સંખ્યા 3.
>> યાકૂબના: જેકબ.
>> ડેવીડના MALAN: જેકબ, નંબર 4.
પર આપનું સ્વાગત છે.
GRANT: ગ્રાન્ટ.
ડેવીડના MALAN: ગ્રાન્ટ.
સંખ્યા 5.
>> Alanna: Alanna.
>> ડેવીડના MALAN: Alanna, નંબર 6.
>> FRANCES: ફ્રાન્સિસ.
ડેવીડના MALAN: ફ્રાન્સિસ, નંબર 7.
અને?
>> રશેલ: રચેલ.
>> ડેવીડના MALAN: રચેલ, 8 નંબર.
અધિકાર છે.
આગળ વધો અને આ ક્રમમાં પોતાને મળે છે.
મને બાકી એક મૂકી દો સંગીત જગ્યાએ ઊભી છે.
જ્યાં તમે એક સ્ટેન્ડ જરૂર છે?
બરાબર.
આગળ જાઓ અને તમારા નંબરો મૂકી જ્યાં પ્રેક્ષકો તેમના પર જોઈ શકો છો,
સંગીત બાહ્ય સામનો ઊભી છે.
અને આશા છે, અમારા પ્રથમ સેનીટી ચેક અહીં 4, 2, 6.
ઓહ ઓહ.
એક મિનિટ રાહ જુઓ.
અમે 8 નથી.
હું તમને ઘરમાંથી જરૂર કોઈક ઉદાહરણ.
નં
ના, તે બરાબર છે.
માતાનો જોવા દો.
અમે કરી શકો છો.
દ્વારા ઊભી છે.
ત્યાં અમે જાઓ.
યોગ્ય.
અધિકાર છે.
તેથી, હવે અમે 8, 1, 3 7, 5 છે.
બરાબર.
ઉત્તમ.
>> તેથી હાથ પર પ્રશ્ન પર, છે શું ખર્ચ, અને શું પદ્ધતિ મારફતે,
અમે ખરેખર અહીં આ નંબરો સૉર્ટ કરી શકો છો અમે પ્રકારની પાછળની કામ કરી શકે છે કે જેથી,
આખરે, અને decide-- તે ખરેખર છે પ્રભાવશાળી, તે ખરેખર અસરકારક છે,
હું વિભાજીત કરી શકો છો કે અને એક ફોન પુસ્તક જીતી?
તે ખરેખર અસરકારક છે હું વિભાજીત અને જીતી શકે છે
તે ડિજિટલ ટુકડાઓ બોર્ડ પર કાગળ,
તે અમને એક ખર્ચ બનશે કદાચ જો સમય અથવા ઊર્જા અથવા CPU ચક્ર નસીબ
ખરેખર અમારી માહિતી મેળવવા માટે કેટલાક ક્રમમાં માં?
તેથી આપણે કે પ્રશ્ન પૂછો દો.
>> તેથી પ્રથમ બોલ, આ નંબરો છે ખૂબ ખૂબ ગમે તે,
અને હું પ્રસ્તાવ જાઉં છું એક અલ્ગોરિધમનો, અથવા પ્રક્રિયા
જેના દ્વારા અમે આ લોકો સૉર્ટ કરી શકો છો.
હું સંપર્ક જાઉં છું આ ખૂબ નિખાલસ રીતે.
અને હું ઓળખી જાઉં છું તે મારા માટે ઘણો પ્રકારની છે કે
આ આસપાસ મારા મન લપેટી સમગ્ર માહિતી એક જ સમયે સુયોજિત કરો.
પરંતુ તમે શું જાણો છો?
હું કેટલાક બનાવવા માટે જઇ રહ્યો છું ખૂબ જ સરળ સીમાંત સુધારાઓ.
4 અને 2 છે, હુકમ બહાર છે ધ્યેય 8 સુધી પર 1 થી જવું.
જેથી તમે શું જાણો છો?
હું તમારી પાસે જાઉં છું તમે સ્વિચ જો ગાય્સ, સ્વેપ
શારીરિક સ્થિતિ અને કાગળ તમારી ટુકડાઓ.
હવે 4 અને 6, આ ક્રમમાં હોય છે.
હું તે હોઈ છોડી જાઉં છું.
6 અને 8, તે ક્રમમાં છે.
તેમને પ્રયત્ન છોડી જવું.
હુકમ બહાર 8 and1,.
તમે બે જેઓ વાંધો છો.
હવે 8 અને 3, તમે ગાય્સ સ્વેપ શકે છે.
8 અને 7, તમે ગાય્સ સ્વેપ શકે છે.
અને 8 અને 5, તમે ગાય્સ સ્વેપ શકે છે.
>> હવે, હું કરી રહ્યો છું?
ના, દેખીતી રીતે નથી.
પરંતુ હું કરેલા સારી પરિસ્થિતિ, અધિકાર?
તમારું નામ ફરીથી શું હતું, 8 નંબર?
>> રશેલ: રચેલ.
ડેવીડના MALAN: તેથી રચેલ છે અસરકારક રીતે ખૂબ દૂર સુધી bubbled,
ઓવરને બધી રીતે અહીં નંબરો મારા એરે.
અને તેથી તે સમસ્યા પ્રકારની હલ છે.
હવે, સ્પષ્ટ રીતે, 2 હજુ પણ જરૂરી છે થોડી ખસેડવા માટે, અને 4 અને 6 અને 1.
પરંતુ હું મેળવેલ છે એવું લાગે છે ઉકેલ નજીક ઓછી.
તેથી આપણે આ જ લાગુ દો ફરીથી નિષ્કપટ સંશોધનાત્મક.
2 અને 4, બરાબર.
4 અને 6, બરાબર.
6 અને 1, મીમી-મીમી.
માતાનો સ્વેપ કરો.
6 અને 3, મીમી-મીમી.
માતાનો સ્વેપ કરો.
6 અને 7 બરાબર છે.
7 અને 5, ના.
માતાનો સ્વેપ કરો.
અને હવે 7 અને 8.
અને તમારું નામ ફરીથી શું છે?
FRANCES: ફ્રાન્સિસ.
ડેવીડના MALAN: ફ્રાન્સિસ.
તેથી હવે ફ્રાન્સિસ પણ વધુ સારી છે સ્થિતિ, હવે 7 અને 8 કારણ કે
યોગ્ય રીતે ટોચ સુધી bubbled છે.
તેથી 2 અને 4, બરાબર.
4 અને 1, લેટ્સ સ્વેપ.
4 અને 3, લેટ્સ સ્વેપ.
4 અને 6, તમે બરાબર છો.
6 અને 5, લેટ્સ સ્વેપ.
અને હવે તે ગાય્સ સારા છે.
અમે લગભગ ત્યાં છો.
2 અને 1, હુકમ બહાર છે, તેથી સ્વેપ.
અને હવે મને એક સેનીટી ચેક કરવા દો.
2 અને 3, 3 અને 4, 4 અને 5, 5 અને 6, 6 અને 7, 8.
ઠીક છે, તેથી અમે પૂર્ણ કરી લીધું.
>> પરંતુ શું ખર્ચ હું કર્યું અહીં આ નંબરો સૉર્ટ?
ઠીક છે, કેટલા પગલાંઓ સંભવિત હું કર્યું આ લોકો સૉર્ટ જ્યારે લેવા?
વેલ, અમે પાછા કે પ્રશ્નનો આવે પડશે.
પરંતુ, પ્રમાણિકપણે, તમે મળી તો થોડી કંટાળો, કે
પ્રકારની આ ન હતી કે છતી કદાચ સૌથી કાર્યક્ષમ અલ્ગોરિધમનો.
અને ખરેખર, પ્રમાણિકપણે, હું પરસેવો છું તમામ વધુ અને પાછળ આગળ વૉકિંગ.
તે ખાસ કરીને અસરકારક ન થતી હોય.
તેથી આપણે કંઈક બીજું પ્રયાસ કરો.
તમે ગાય્સ ફરીથી સેટ કરી શકે છે આ આઠ કિંમતો માટે તમે પોતે જ.
ગુડ કામ.
>> આપણે માત્ર માટે, ડિજીટલ એક નજર એક ક્ષણ અમે કંઈક બીજું પ્રયાસ પહેલાં
શું માત્ર થયું છે.
અહીં ઉપર, તમે તે જોવા માટે કરી રહ્યાં છો આ આઠ મનુષ્યો વિઝ્યુલાઇઝેશન
જેમાં વાદળી અને લાલ બાર નંબરો પ્રતિનિધિત્વ કરે છે.
આ ઊંચા બાર, સંખ્યા મોટી.
આ ટૂંકા બાર, સંખ્યા નાની.
અને શું તમે જોઈ રહ્યા છીએ છે તેમને આઠ કરતાં વધુ ગમે તે.
તમે આ બાર જોવા જઈ રહ્યાં છો તે જ અલ્ગોરિધમનો દ્વારા સૉર્ટ રહ્યું,
અથવા, સૂચનો સમૂહ જે અમે બબલ સૉર્ટ અત્યારથી કહી શકશો.
તેથી, બીજા કે જેથી દરેક નોટિસ બે બાર, લાલ ઝળહળતી છે
કોમ્પ્યુટર દ્વારા સરખામણીમાં આવી રહી છે.
અને પછી જો મોટા બાર અને ઓછી બાર, હુકમ બહાર છે
તેઓ મારા માટે સ્વૅપ કરવામાં આવી રહી છે.
>> હવે આ અતિ જટિલ છે ચોક્કસપણે, આ જોવા માટે,
ખૂબ જ લાંબા સમય માટે, પરંતુ નોટિસ , જમણી ખસેડવાની મોટા બાર takeaway--
ડાબી ખસેડી થોડી બાર.
ચાલો આ પ્રક્રિયા અડધેથી બંધ કરો અને આ ઝડપ
વધુ ઝડપી હોય છે, તેથી અમે કરી શકો છો કરવા માટે તે એક ઉચ્ચ સ્તર અર્થમાં વિચાર,
ખરેખર, બબલ સૉર્ટ કરી છે.
ખરેખર, તે સુધી પરપોટાનો છે યાદીમાં જમણી બાજુ,
અથવા એરે, મોટા બાર.
અને ઊલટી, નાના બાર છે ડાબી નીચે તેમના માર્ગ પરપોટાનો,
એક ઝડપી ગતિએ યદ્યપિ કરતાં અમે અગાઉ કર્યું હતું.
તેથી, સખત મનુષ્યો સાથે જોવા માટે, પરંતુ દૃષ્ટિની કે ખરેખર શું છે
બની રહ્યું હતું.
>> પરંતુ મૂળભૂત એક પ્રયાસ કરો હવે અલગ અભિગમ.
માતાનો અલગ પ્રયાસ કરો અલ્ગોરિધમનો અમે તમારી પાસે જેમાં
ગાય્સ આ મૂળ શરૂ આ ક્રમમાં અહીં હતી સ્થિતિ.
અને હવે આગળ જાઓ.
અને હું કંઈક કરવા જાઉં છું પણ સરળ, અધિકાર?
ભૂતકાળમાં, ફરીથી pairwise જેઓ અને ફરી, લગભગ થોડો હોંશિયાર.
, ચાલો પણ વધુ નિખાલસ રીતે વસ્તુઓ દો જ્યાં હું આ લોકો સૉર્ટ કરવા માંગો છો,
મને માત્ર શોધી રાખવા દો નાના તત્વ માટે.
તેથી હમણાં, 4 છે હું જોઇ છે નાના સંખ્યા.
હું યાદ રાખો કે જાઉં છું.
ના, 2 સારી છે, અને તે યાદ કરે છે.
1 પણ ઓછી છે.
3, 7, 5.
બરાબર.
One-- તમારું નામ ફરીથી શું છે?
>> આર્ટી: આર્ટી.
>> ડેવીડના MALAN: આર્ટી.
તેથી, આર્ટી, આગળ જાઓ.
હું વાક્ય બહાર તમે ખેંચી જઇ રહ્યો છું.
તમે અહીં પાછા આવો શકે છે.
અને હું તેમને માટે જગ્યા કરવાની જરૂર છે.
અમે અહીં નિર્ણય બિંદુ છે.
અમે અહીં આર્ટી માટે જગ્યા કરી શકે છે કેવી રીતે નંબર 1 અનુસરે છે શરૂઆતમાં?
>> પ્રેક્ષક: શીફ્ટ.
>> ડેવીડના MALAN: ઠીક છે, અમે દરેક પાળી શકે છે.
પરંતુ એક ઓપ્ટિમાઇઝેશન પ્રસ્તાવ.
તે થોડી હેરાન લાગે મને ચાર લોકો પૂછો માટે
નીચે બધી રીતે ખસેડવા માટે.
હું બીજું શું કરી શકે?
>> પ્રેક્ષક: તેમને સ્વિચ કરો.
>> ડેવીડના MALAN: તેમને સ્વિચ કરો.
અને તમારું નામ ફરીથી શું છે?
>> યાકૂબના: જેકબ.
ડેવીડના MALAN: જેકબ, ખસેડો.
વધુ કાર્યક્ષમ માત્ર હોય આર્ટી સાથે જેકબ સ્વેપ સ્થાનો,
દબાણ વિરોધ આ લોકો તમામ ચાર,
માટે, તમે ખૂબ ખૂબ આભાર તેમના યોગ્ય સ્થિતિ.
શું હવે આર્ટી વિશે સારું છે, તેઓ તેમના યોગ્ય સ્થિતિમાં છે.
માતાનો આ ફરીથી દો.
2, કે હું જોઈ કર્યું નાના નંબર છે.
3, 7, 5.
બરાબર.
2 ચોક્કસપણે સૌથી નાનું છે.
કોઇ પણ કાર્ય કરવા માટે હોય છે નથી.
માતાનો ફરીથી કરવા દો.
6.
નાનું?
8.
ના.
4?
Ooh.
મને 4 યાદ કરીએ.
3.
મને 3 યાદ કરીએ.
7, 5.
હું કર્યું નાનું સંખ્યા આ પાસ પર જોવા 3 છે.
તમે બહાર પર આવે છો.
જ્યાં અમે તમે મૂકી જવું છે?
અને તમારું નામ શું છે?
>> Alanna: Alanna.
>> ડેવીડના MALAN: Alanna, અમે છો તમે ઘરમાંથી છે જવું.
પરંતુ તે વધુ કાર્યક્ષમ છે માત્ર બે લોકો સ્વેપ,
ઘણા લોકો હોય છે કરતાં ખરેખર પર sidestep.
હવે આપણે ફરી આ કરવા દો.
હું 4 પસંદ કરો, જેથી બહાર પર આવવા જાઉં છું.
અને જે ખસેડવા બનશે?
સંખ્યા 8, અલબત્ત.
હવે હું 5 નંબર શોધવા માટે, બહાર આવ.
સંખ્યા 8 ફરી કબ્જો કરવા માટે બનશે.
હવે હું જગ્યાએ નંબર 6 શોધવા જાઉં છું.
જગ્યાએ 7.
જગ્યાએ 8.
>> શું આપણે હવે કર્યું છે પસંદગી સૉર્ટ કહેવાય છે,
અમે આ વિઝ્યુઅલાઈઝ, તો તે છે થોડું અલગ લાગે રહ્યા.
ચાલો આગળ અને આ જાઓ મેનુ અહીં આ visualization--
માતાનો, ફાયરફોક્સ પર આવે to-- આ બદલો.
એ પસંદ પ્રકારની આ બદલવા દો.
અને માતાનો તરીકે તે પહેલાં ઝડપી દો, અને હવે દ્રશ્ય શરૂ કરો.
અને આ અલ્ગોરિધમનો છે તે માટે એક અલગ લાગણી.
દરેક ઇટરેશન પર, પ્રમાણિકપણે, તે પણ વધુ સરળ છે.
હું માત્ર નાના તત્વ પસંદ છું.
હવે, પ્રમાણિકપણે, હું થોડી નસીબદાર મળી સમય, કે તે સુપર ઝડપી સૉર્ટ.
આ તત્વો રેન્ડમ હતા.
તે અમે આખરે પડશે, નથી મૂળભૂત ઝડપી, જુઓ.
પરંતુ ત્રીજા અને અંતિમ જોવા દો શું થઈ રહ્યું છે માટે અહીં સંપર્ક.
તેથી આપણે આગળ જવા દો અને તમે ગાય્સ ફરીથી સેટ એક અંતિમ સમય અહીં આ ક્રમમાં છે.
>> અને હવે, હું જાઉં છું , થોડી વધુ હોંશિયાર હોઈ
અમારા ગાણિતીક નિયમો બહાર ધરપકડ.
હું આ કરવા જાઉં છું.
હું જવા નથી જઈ રહ્યો છું પાછળ આગળ ખૂબ જ.
પ્રમાણિકપણે, હું થાકી છું આ બધા સરકાઉ.
હું માત્ર હું છું શું લેવા જાઉં છું યાદી શરૂઆતમાં આપવામાં આવે છે,
અને હું સૉર્ટ કરવા જઇ રહ્યો છું કે પછી અને ત્યાં.
અહીં અમે છે.
સંખ્યા 4.
હું નંબર દાખલ કરવા માટે જઇ રહ્યો છું એક છટણી યાદી માં 4.
પૂર્ણ.
હવે હું દાવો, અને માત્ર આ વધુ બનાવવા માટે સ્પષ્ટ, મારા યાદી આ ભાગ સૉર્ટ થાય છે.
તે મૂર્ખ દાવો પ્રકારની છે, પરંતુ ખરેખર 4 કદ એક યાદી માં સૉર્ટ થાય છે.
હવે, હું 2 નંબર લઇ જાઉં છું.
નંબર 2 હવે હું જાઉં છું યોગ્ય સ્થાન માં દાખલ કરો.
તેથી જ્યાં 2 સંબંધ છે?
દેખીતી રીતે, અહીં.
તેથી આગળ વધો અને તમે કરી શકે છે, પાછા ખસેડો.
અને શા માટે નથી તમે ગાય્સ માત્ર લે છે તમારા સંગીત તમારી સાથે આ સમય રહે છે.
અને બળજબરી ચાલો તમે દાખલ યાદી શરૂઆતમાં માં.
તેથી થોડી વધુ કામ કરે છે.
હું આસપાસ જેકબ ખસેડવા હતી અને તમારું નામ શું છે?
>> અમીન: અમીન.
>> ડેવીડના MALAN: અમીન.
પરંતુ ઓછામાં ઓછા હું આગળ અને આગળ જવા ન હતી.
હું જવા તરીકે હું માત્ર વસ્તુઓ લઈ રહ્યો છું.
હું માત્ર તેમને દાખલ છું યોગ્ય જગ્યાએ.
6, આ ખરેખર ખૂબ સરળ છે.
તમે જો, ત્યાં તમે દાખલ કરો માત્ર સહેજ ઉપર ખસેડવા માગતા હતા.
સંખ્યા 8, પણ ખૂબ સરળ છે.
અધિકાર ત્યાં પર.
તેને ધુત્કારી કાઢવું.
નંબર 1 અમે કરી શકો છો ફક્ત અહીં અમીન સાથે સ્વેપ,
કે કારણ કે ચાલી રહ્યું છે ગડબડ ક્રમ છે.
તેથી અમે થોડી વધુ ચપળ હોય છે.
તેથી, આર્ટી, તો તમે કરી શકે એક ક્ષણ માટે બેકઅપ.
, ચાલો આગળ વધો અને હવે પાળી દો અમારા અગાઉના ગાણિતીક નિયમો જેમ નહિં પણ,
આર્ટી માટે જગ્યા બનાવવા માટે અહીં શરૂઆતમાં.
દિવસ ઓવરને અંતે તેથી, હું પ્રકારની છું હું પહેલાં ટાળવા ઇચ્છતા શું કરી.
અને તેથી મારા અલ્ગોરિધમનો જેવું છે ના, બુદ્ધિપૂર્વક, ઉલટી
તે મૂળ શું છે.
હું માત્ર સ્થળાંતર કરી રહ્યો છું અલગ સમયે.
હવે હું 3 અંતે છું.
ખરેખર ખૂબ જ, ઓહ.
અમે ફરીથી વધારે કામ કરવું પડશે.
તેથી આપણે તમે બહાર દબાણ કરો.
માતાનો ખસેડો 8, 6, 4-- ઓહ ઓહ અને 3 અધિકાર ત્યાં જવા માટે ચાલે છે.
આ સમય ઓછા થોડો બચત પર તેથી.
7, નથી ખૂબ જ કામ કર્યું છે.
તમે પોપ કરવા માંગો છો તેથી જો પાછા, ચાલો તમે દાખલ દો.
અને છેલ્લે, 5, તમે જો પાછા પૉપ માંગો છો, અમે
, તમે પાળી તમે જરૂર છે, પાંચ સુધી તમે સ્થળ છે.
>> તેથી હવે આ જોવા માટે ગ્રાફિકલી ઉચ્ચ સ્તર,
ચાલો આ અલ્ગોરિધમનો કરવા દો વિઝ્યુલાઇઝેશન એક વધારાના સમય.
તેથી આ અમે દાખલ સૉર્ટ કૉલ કરશે.
અમે હમણાં જ તરીકે ચલાવવા પડશે ઝડપી, અને અહીં તે શરૂ કરો.
અને તે, પણ, એક અલગ લાગણી ધરાવે છે.
તે પ્રકારની સારી મેળવવામાં આવ્યું અને વધુ સારી છે, પરંતુ તે સંપૂર્ણ ક્યારેય છે
હું તે અવકાશ માં માં અને સરળ જાઓ ત્યાં સુધી.
કારણ કે, ફરી, હું માત્ર લઈ રહ્યો છું શું હું ડાબેથી જમણે આપવામાં આવી રહી છું.
તેથી હું નસીબદાર નથી બધું છે કે જે ચોક્કસ હતી.
અમે આ થોડું હતી કે શા માટે છે અમે સમય પર સુધારેલ છે mispositions.
>> તેથી આ એલ્ગોરિધમ્સ બધા લાગે છે થોડા અલગ પેસીસ પર ચાલે છે.
હકીકતમાં, જે તમે છે કહે છે શ્રેષ્ઠ કે અત્યાર સુધી સૌથી ઝડપી?
બબલ સૉર્ટ કરો, પ્રથમ?
પસંદગી સૉર્ટ કરો, બીજા?
નિવેશ સૉર્ટ કરો, ત્રીજા?
હું કેટલાક પસંદગી પ્રકારના સાંભળવા.
અન્ય વિચારો?
>> તેથી તે તારણ આપે છે કે આ ગાણિતીક નિયમો તમામ
તરીકે મૂળભૂત જ કાર્યક્ષમ છે જેમ, ઊલટી, દરેક other-- અથવા
એકબીજા તરીકે બિનકાર્યક્ષમ, અમે મૂળભૂત કરી શકો છો કારણ કે
બધા ત્રણ કરતાં વધુ સારી આ એલ્ગોરિધમ્સ.
અને તે એક સફેદ જૂઠ એક બીટ પણ છે.
હું કાર્યક્ષમ કહે છે ત્યારે અથવા બિનકાર્યક્ષમ છે,
કે ઓછામાં ઓછા માટે છે n ના સુપર મોટી કિંમતો.
અમે અહીં માત્ર આઠ લોકો હોય છે, અથવા કદાચ સ્ક્રીન પર 50 અથવા તેથી બાર,
તમે સંપૂર્ણપણે તફાવત નોટિસ પડશે આ ત્રણ ગાણિતીક નિયમો વચ્ચે.
પરંતુ એ છે, લોકોની સંખ્યા, અથવા નંબરો સંખ્યા,
અથવા ફોન માં લોકોની સંખ્યા પુસ્તક, અથવા વેબ પાનાંઓ સંખ્યા
Google ની ડેટાબેઝમાં , મોટી અને મોટી નહીં
અમે જોશો કે આ તમામ ત્રણ ગાણિતીક નિયમો ખરેખર ખૂબ ગરીબ છે.
અને અમે મૂળભૂત કરી શકો છો તે કરતાં વધુ સારી.
>> , ચાલો છેલ્લે, એક નજર શું આ ગાણિતીક નિયમો કદાચ પર
આ જેમ અવાજ થોડા અન્ય સંદર્ભ
પણ આ માર્ગ દ્વારા અહીં વિઝ્યુલાઇઝેશન
કે માટે રજૂ કરશે ગાણિતીક નિયમો એક નંબર.
ચાલો આગળ વધો અને અભિનંદન દો જેમાંથી બધા અહીં અમારા સહભાગીઓ,
ખૂબ જ સારી રીતે પોતાની જાતને અલગ પાડવામાં.
તમે વિદાય ભેટ લેવા માંગો છો, તો.
સાથે સાથે તમે તમારા નંબરો રાખી શકો છો.
અને તમે જોશો છે, અથવા બદલે, હવે, સાંભળવા
કે અમે અવાજ મૂકી આ બાર દરેક
અને, સોફ્ટવેર સાથે સાંકળો અવાજ વિવિધ આવર્તન,
તમે તમારા ધ્યાનમાં વધુ audioly લપેટી શકો છો આ બધી વસ્તુઓ શું દરેક આસપાસ
જેમ દેખાય છે.
જે પ્રથમ નિવેશ જેવું છે
>> [ટોન]
>> આ પરપોટા જેવું છે.
>> [ટોન]
>> પસંદગી સૉર્ટ કરો.
>> [ટોન]
>> મર્જ સૉર્ટ કહેવાય કંઈક.
>> [ટોન]
>> જીનોમ સૉર્ટ કરો.
>> [ટોન]
>> તે CS50 માટે છે.
અમે બુધવાર પર જોશે.
>> નેરેટર: અને હવે, "ડીપ Daven Farnham દ્વારા વિચારો, ".
શા માટે તે એક લૂપ માટે છે?
શા માટે તે વધુ સારું છે?
હું પાંચ લૂપ કરો છો.
>> [હાસ્ય]