<snapdata remixID="9142504"><project name="Selection Sort" app="Snap! 5.4, http://snap.berkeley.edu" version="1"><notes></notes><thumbnail>data:image/png;base64,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</thumbnail><stage name="Stage" width="480" height="360" costume="0" color="255,255,255,1" tempo="60" threadsafe="false" penlog="false" volume="100" pan="0" lines="round" ternary="false" codify="false" inheritance="true" sublistIDs="false" scheduled="false" id="1"><pentrails>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAOhUlEQVR4Xu3VwQkAAAjEMN1/abewn7jAQRC64wgQIECAAIF3gX1fNEiAAAECBAiMAHsCAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQIHLFxAWmhEwHPAAAAAElFTkSuQmCC</pentrails><costumes><list struct="atomic" id="2"></list></costumes><sounds><list struct="atomic" id="3"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites><sprite name="Sprite" idx="1" x="0" y="0" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="0" color="80,80,80,1" pen="tip" id="8"><costumes><list struct="atomic" id="9"></list></costumes><sounds><list struct="atomic" id="10"></list></sounds><blocks></blocks><variables></variables><scripts><script x="61" y="61"><block s="receiveGo"></block><block s="doSetVar"><l>data_list</l><block s="reportNewList"><list><l>2</l><l>9</l><l>1</l><l>5</l><l>-1</l><l>70</l></list></block></block></script><script x="20" y="415"><block s="receiveGo"></block><block s="doFor"><l>j</l><l>1</l><block s="reportDifference"><block s="reportListLength"><block var="data_list"/></block><l>1</l></block><script><block s="doSetVar"><l>curr_min</l><block s="reportListItem"><block var="j"/><block var="data_list"/></block></block><block s="doSetVar"><l>curr_min_index</l><block var="j"/></block><block s="doFor"><l>i</l><block s="reportSum"><block var="j"/><l>1</l></block><block s="reportListLength"><block var="data_list"/></block><script><block s="doIf"><block s="reportLessThan"><block s="reportListItem"><block var="i"/><block var="data_list"/></block><block var="curr_min"/></block><script><block s="doSetVar"><l>curr_min</l><block s="reportListItem"><block var="i"/><block var="data_list"/></block></block><block s="doSetVar"><l>curr_min_index</l><block var="i"/></block></script></block></script><comment w="90" collapsed="true">In this for loop we find the smallest value left in the unsorted part of the list.</comment></block><block s="doSetVar"><l>temp</l><block var="curr_min"/></block><block s="doReplaceInList"><block var="curr_min_index"/><block var="data_list"/><block s="reportListItem"><block var="j"/><block var="data_list"/></block></block><block s="doReplaceInList"><block var="j"/><block var="data_list"/><block var="temp"/></block></script><comment w="90" collapsed="true">&quot;j&quot; is the same as unsorted_index in the other example. Here it is just expressed as a for loop intead of a repeat until loop. </comment></block></script><script x="136" y="10"><block s="receiveGo"></block><block s="doSetVar"><l>unsorted_index</l><l>1</l><comment w="90" collapsed="true">Unsorted index marks the index list at which the values become unsorted. It starts at the very beginning of the list and then as we find the smallest value in the unsorted part of the list, we swap it into that index and now that index is part of the &quot;sorted&quot; part of the list.</comment></block><block s="doUntil"><block s="reportEquals"><block var="unsorted_index"/><block s="reportListLength"><block var="data_list"/></block></block><script><block s="doSetVar"><l>curr_min</l><block s="reportListItem"><block var="unsorted_index"/><block var="data_list"/></block></block><block s="doSetVar"><l>curr_min_index</l><block var="unsorted_index"/></block><block s="doFor"><l>i</l><block var="unsorted_index"/><block s="reportListLength"><block var="data_list"/></block><script><block s="doIf"><block s="reportLessThan"><block s="reportListItem"><block var="i"/><block var="data_list"/></block><block var="curr_min"/></block><script><block s="doSetVar"><l>curr_min</l><block s="reportListItem"><block var="i"/><block var="data_list"/></block></block><block s="doSetVar"><l>curr_min_index</l><block var="i"/></block></script></block></script><comment w="90" collapsed="true">In this for loop we find the smallest value left in the unsorted part of the list.</comment></block><block s="doSetVar"><l>temp</l><block s="reportListItem"><block var="curr_min_index"/><block var="data_list"/></block><comment w="90" collapsed="true">Once smallest value and its index are found, swap them into the first index of the unsorted list (&quot;unsorted_index&quot;) and increase unsorted_index so that index is now considered sorted. </comment></block><block s="doReplaceInList"><block var="curr_min_index"/><block var="data_list"/><block s="reportListItem"><block var="unsorted_index"/><block var="data_list"/></block></block><block s="doReplaceInList"><block var="unsorted_index"/><block var="data_list"/><block var="temp"/></block><block s="doChangeVar"><l>unsorted_index</l><l>1</l></block></script><comment w="90" collapsed="true">once unsorted_index reaches the end of the list, then everything must be the &quot;sorted&quot; part of the list and thus the list is sorted.</comment></block></script></scripts></sprite><watcher var="unsorted_index" style="normal" x="10" y="31.000001999999995" color="243,118,29"/><watcher var="temp" style="normal" x="10" y="73.000006" color="243,118,29"/><watcher var="curr_min_index" style="normal" x="10" y="52.00000399999999" color="243,118,29"/><watcher var="curr_min" style="normal" x="10" y="10" color="243,118,29"/><watcher var="data_list" style="normal" x="230" y="76" color="243,118,29" extX="134" extY="203"/></sprites></stage><hidden></hidden><headers></headers><code></code><blocks></blocks><variables><variable name="data_list"><list struct="atomic" id="168">-1,1,2,5,9,70</list></variable><variable name="unsorted_index"><l>6</l></variable><variable name="temp"><l>9</l></variable><variable name="curr_min_index"><l>5</l></variable><variable name="curr_min"><l>9</l></variable></variables></project><media name="Selection Sort" app="Snap! 5.4, http://snap.berkeley.edu" version="1"></media></snapdata>