<snapdata remixID="9138257"><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="51" y="55.99999999999997"><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="10" y="410"><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="373.9999999999998" 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.00000599999998" color="243,118,29"/><watcher var="data_list" style="normal" x="255" y="7" color="243,118,29" extX="164" extY="175"/><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"/></sprites></stage><hidden></hidden><headers></headers><code></code><blocks></blocks><variables><variable name="data_list"><list struct="atomic" id="168">2,1,-1,9,5,70,-1,-6,6,10</list></variable><variable name="unsorted_index"><l>3</l></variable><variable name="temp"><l>0</l></variable><variable name="curr_min_index"><l>7</l></variable><variable name="curr_min"><l>0</l></variable></variables></project><media name="Selection Sort" app="Snap! 5.4, http://snap.berkeley.edu" version="1"></media></snapdata>