<snapdata remixID="9124337"><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="56"><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="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="384" 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="102" extY="90"/><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">-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>