Difference between revisions of "Algorithm"
Sskrishnamoo (talk | contribs) (Created page with 'testing') |
Saad Tauseef (talk | contribs) (→Team Members) |
||
(2 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
− | + | {{GPU610/DPS915 Index | 20123}} | |
+ | = Algorithm = | ||
+ | |||
+ | |||
+ | == Team Members == | ||
+ | # [mailto:sskrishnamoo@learn.senecac.on.ca?subject=DPS915 sskrishnamoo] | ||
+ | # [mailto:stauseef1@learn.senecac.on.ca?subject=DPS915 stauseef1] | ||
+ | |||
+ | |||
+ | |||
+ | ==== Program ==== | ||
+ | A simple program that generates random number is N size of arrays and generate a random search key based on N size of arrays. It uses quickSort to sort the unsorted arrays and uses the binarySearch to see if the search key exists or not. | ||
+ | |||
+ | |||
+ | ==== Profile ==== | ||
+ | These results were taken with an execution of 300000000 size of arrays | ||
+ | <pre> | ||
+ | Flat profile: | ||
+ | |||
+ | Each sample counts as 0.01 seconds. | ||
+ | % cumulative self self total | ||
+ | time seconds seconds calls Ts/call Ts/call name | ||
+ | 100.00 68.72 68.72 quickSort(long*, long, long) | ||
+ | 0.00 68.72 0.00 1 0.00 0.00 _GLOBAL__sub_I_A | ||
+ | |||
+ | </pre> | ||
+ | |||
+ | ==== Code Snippet ==== | ||
+ | <pre> | ||
+ | void quickSort(long arr[], long left, long right) { | ||
+ | long i = left, j = right; | ||
+ | long tmp; | ||
+ | long pivot = arr[(left + right) / 2]; | ||
+ | |||
+ | while (i <= j) { | ||
+ | while (arr[i] < pivot) | ||
+ | i++; | ||
+ | while (arr[j] > pivot) | ||
+ | j--; | ||
+ | if (i <= j) { | ||
+ | tmp = arr[i]; | ||
+ | arr[i] = arr[j]; | ||
+ | arr[j] = tmp; | ||
+ | i++; | ||
+ | j--; | ||
+ | } | ||
+ | }; | ||
+ | if (left < j) | ||
+ | quickSort(arr, left, j); | ||
+ | if (i < right) | ||
+ | quickSort(arr, i, right); | ||
+ | } | ||
+ | |||
+ | </pre> | ||
+ | |||
+ | == Instructor's Comments == |
Latest revision as of 23:52, 12 December 2012
GPU610/DPS915 | Student List | Group and Project Index | Student Resources | Glossary
Contents
Algorithm
Team Members
Program
A simple program that generates random number is N size of arrays and generate a random search key based on N size of arrays. It uses quickSort to sort the unsorted arrays and uses the binarySearch to see if the search key exists or not.
Profile
These results were taken with an execution of 300000000 size of arrays
Flat profile: Each sample counts as 0.01 seconds. % cumulative self self total time seconds seconds calls Ts/call Ts/call name 100.00 68.72 68.72 quickSort(long*, long, long) 0.00 68.72 0.00 1 0.00 0.00 _GLOBAL__sub_I_A
Code Snippet
void quickSort(long arr[], long left, long right) { long i = left, j = right; long tmp; long pivot = arr[(left + right) / 2]; while (i <= j) { while (arr[i] < pivot) i++; while (arr[j] > pivot) j--; if (i <= j) { tmp = arr[i]; arr[i] = arr[j]; arr[j] = tmp; i++; j--; } }; if (left < j) quickSort(arr, left, j); if (i < right) quickSort(arr, i, right); }