-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathls.quicksort-help.pd
More file actions
executable file
·146 lines (146 loc) · 4.99 KB
/
Copy pathls.quicksort-help.pd
File metadata and controls
executable file
·146 lines (146 loc) · 4.99 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
#N canvas 410 58 820 747 12;
#X declare -path planifolia;
#X obj 88 380 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc #000000 #000000;
#X obj 88 489 ls.scramble;
#X obj 171 638 tgl 15 0 empty empty empty 17 7 0 10 #fcfcfc #000000 #000000 0 1;
#X obj 88 518 t l l;
#X obj 132 517 print randomlist;
#X obj 170 705 print current_list;
#X obj 89 659 ls.quicksort;
#X msg 32 48 quicksort;
#N canvas 0 23 450 300 (subpatch) 0;
#X obj 347 40 pdcontrol;
#X msg 14 40 browse https://en.wikipedia.org/wiki/Quicksort;
#X obj 13 8 inlet;
#X connect 1 0 0 0;
#X connect 2 0 1 0;
#X coords 0 -1 1 1 15 15 2 1 1;
#X restore 33 65 pd;
#X text 102 48 algorithm to sort elements of a list;
#X obj 84 147 cnv 18 3 17 empty empty 0 5 9 0 14 #dcdcdc #9c9c9c 0;
#X obj 84 167 cnv 18 3 17 empty empty 1 5 9 0 14 #dcdcdc #9c9c9c 0;
#X text 104 146 list: list to sort;
#X text 280 165 gets current step and current list at each iteration;
#X text 105 166 float: 1/0 (default 0) -;
#X obj 84 225 cnv 18 3 17 empty empty 0 5 9 0 14 #dcdcdc #9c9c9c 0;
#X obj 84 245 cnv 18 3 17 empty empty 1 5 9 0 14 #dcdcdc #9c9c9c 0;
#X text 106 224 list: sorted list;
#X obj 84 265 cnv 18 3 17 empty empty 2 5 9 0 14 #dcdcdc #9c9c9c 0;
#X obj 84 285 cnv 18 3 17 empty empty 3 5 9 0 14 #dcdcdc #9c9c9c 0;
#X text 105 284 float: if inlet 1 is "1" \, current iteration (from 0 to N-1);
#X text 105 244 float: N \, number of iterations (counting last state);
#X text 198 566 scrambled list;
#X obj 171 591 loadbang;
#X msg 171 613 1;
#X obj 170 683 print step_count;
#X obj 170 731 print final_number_of_steps;
#X obj 89 803 print final_sorted_list;
#N canvas 634 72 1067 801 chars_and_floats 0;
#X obj 216 118 ls.iter;
#X obj 217 145 list tosymbol;
#X obj 69 94 ls.ser.arithm 0 99 1;
#X obj 70 168 list store;
#X obj 80 29 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc #000000 #000000;
#X msg 574 101 reset;
#X obj 71 232 ls.scramble;
#X obj 167 375 tgl 15 0 empty empty empty 17 7 0 10 #fcfcfc #000000 #000000 0 1;
#X obj 84 294 t l l;
#X obj 128 293 print randomlist;
#X text 235 262 scrambled list;
#X obj 201 320 loadbang;
#X msg 201 342 1;
#X text 183 373 get each step?;
#X obj 112 459 print final_number_of_steps;
#X obj 85 480 print final_sorted_list;
#X text 555 185 generating a list mixing number 0 to 99 and chars;
#X obj 85 392 ls.quicksort;
#X obj 216 94 ls.ser.arithm 97 123 1;
#X obj 217 179 ls.group 25;
#X obj 385 116 ls.iter;
#X obj 386 143 list tosymbol;
#X obj 386 177 ls.group 25;
#X obj 385 92 ls.ser.arithm 65 90 1;
#X obj 80 48 t b b b b;
#X obj 218 207 list append;
#X connect 0 0 1 0;
#X connect 1 0 19 0;
#X connect 2 0 3 0;
#X connect 3 0 6 0;
#X connect 4 0 24 0;
#X connect 5 0 19 0;
#X connect 5 0 22 0;
#X connect 6 0 8 0;
#X connect 7 0 17 1;
#X connect 8 0 17 0;
#X connect 8 1 9 0;
#X connect 11 0 12 0;
#X connect 12 0 7 0;
#X connect 17 0 15 0;
#X connect 17 1 14 0;
#X connect 18 0 0 0;
#X connect 19 0 25 0;
#X connect 20 0 21 0;
#X connect 21 0 22 0;
#X connect 22 0 25 1;
#X connect 23 0 20 0;
#X connect 24 0 2 0;
#X connect 24 1 18 0;
#X connect 24 2 23 0;
#X connect 24 3 5 0;
#X connect 25 0 3 1;
#X restore 62 841 pd chars_and_floats;
#X text 207 840 <- sorting floats and chars;
#N canvas 0 23 433 312 longer_symbols 0;
#X msg 80 40 aa 4 a cd ce cad aad ada 2 19 3 8 1 f 5 12;
#X obj 162 121 tgl 15 0 empty empty empty 17 7 0 10 #fcfcfc #000000 #000000 0 1;
#X obj 134 184 print current_list;
#X obj 80 138 ls.quicksort;
#X obj 196 66 loadbang;
#X msg 196 88 1;
#X text 178 119 get each step?;
#X obj 161 162 print step_count;
#X obj 107 205 print final_number_of_steps;
#X obj 80 226 print final_sorted_list;
#X connect 0 0 3 0;
#X connect 1 0 3 1;
#X connect 3 0 9 0;
#X connect 3 1 8 0;
#X connect 3 2 2 0;
#X connect 3 3 7 0;
#X connect 4 0 5 0;
#X connect 5 0 1 0;
#X restore 62 862 pd longer_symbols;
#X text 202 861 <- sorting floats \, chars and longer symbols;
#X text 106 264 list: if inlet 1 is "1" \, list state for each iteration;
#X text 29 29 vanilla abstraction implenting an ascending order;
#X text 29 73 works with floats and symbols (which are sorted to the left of the floats);
#X obj 88 400 ls.ser.arithm 1 10 1;
#X text 238 398 list from 1 to 10;
#X text 187 635 toggles iteration monitoring;
#X obj 621 40 plnf_version;
#X obj -1 -1 cnv 15 805 23 empty empty ls.quicksort 8 10 0 20 #282d39 #efefef 0;
#X obj -1 118 cnv 15 805 17 empty empty inlets 8 8 0 12 #282d39 #efefef 0;
#X obj -1 202 cnv 15 805 17 empty empty outlets 8 8 0 12 #282d39 #efefef 0;
#X obj -1 317 cnv 15 805 17 empty empty example 8 8 0 12 #282d39 #efefef 0;
#X listbox 88 567 20 0 0 0 - - - 0;
#X listbox 88 443 20 0 0 0 - - - 0;
#X text 198 443 original (ordered);
#X listbox 89 768 20 0 0 0 - - - 0;
#X text 200 767 sorted;
#X obj 621 352 declare -path planifolia;
#X connect 0 0 35 0;
#X connect 1 0 3 0;
#X connect 2 0 6 1;
#X connect 3 0 43 0;
#X connect 3 1 4 0;
#X connect 6 0 46 0;
#X connect 6 1 26 0;
#X connect 6 2 5 0;
#X connect 6 3 25 0;
#X connect 7 0 8 0;
#X connect 23 0 24 0;
#X connect 24 0 2 0;
#X connect 35 0 44 0;
#X connect 43 0 6 0;
#X connect 44 0 1 0;
#X connect 46 0 27 0;