پاورپوینت مجموعه داده

پاورپوینت مجموعه داده (pptx) 28 اسلاید


دسته بندی : پاورپوینت

نوع فایل : PowerPoint (.pptx) ( قابل ویرایش و آماده پرینت )

تعداد اسلاید: 28 اسلاید

قسمتی از متن PowerPoint (.pptx) :

Data Structures (… and their analysis) Computational Complexiy int naive_multiply(int x, int y) { if (y == 0) return 0; if (y == 1) return x; if ((y % 2) == 0) return naive_multiply(x,y/2) + naive_multiply(x,y/2); return x + naive_multiply(x,y/2) + naive_multiply(x,y/2); } Computational Complexity تعداد زير مسائل : 2  a=2 اندازه زير مسائل: ½  b=2 کار تکرار فعلي : ثابت (حداکثر 8 ) )3 ==, 1 %, 2 /, 2 +)  k = 0 a vs b^k  2 vs 2 ^ 0  2 vs 1  a > b^k O(n^(log b a)=n^(log 2 2) = n^1)  O(n) Computational Complexiy int multiply(int x, int y) { if (y == 0) return 0; if (y == 1) return x; int value = multiply(x,y/2); if ((y % 2) == 0) return value + value; return x + value + value; } Computational Complexity تعداد زير مسائل : 1  a=1 اندازه زير مسائل: ½  b=2 کار تکرار فعلي : ثابت (حداکثر 8 ) 3 ==, 1 %, 2 /, 2 +)  k = 0 a vs b^k  1vs 2 ^ 0  1 vs 1  a == b^k O(n^k lg n = n^0 lg n = lg n)  O(lg n) Templates راه حل معمول در نوشتن توابع: کار روي يک نوع داده void sort(int *a, int size) { for (int index = 0; index < size; index++) { int j = index; for (int k = index + 1; k < size; k++) // for each position in array { if (a[k] < a[j]) {j = k;} // find the smallest int temp = a[index]; a[index] = a[j]; a[j] = temp; // switch into appropriate place (first, second, third…) } } } Templates اگر مي خواستيم ليستي از انواع داده زير را مرتب کنيم، چکار کنيم؟ دوبل رشته کاراکتر مستطيل تابع را با پارامترهاي جديد بازنويسي کنيد. يک الگوريتم و چند نوع داده براي برنامه نويس راحت نيست. سايز کد بزرگتر است. خوانايي برنامه کمتر است. Templates توابع الگو: اجازه مي دهند از انواع اختياري در برنامه استفاده کنيم. راه کار: به اول تعريف تابع template را اضافه کنيد. تمام قسمتهايي که از نوع داده مورد نظر استفاده مي کنند، را به طور مناسب با Typeعوض کنيد. Templates: Example template void sort(Type *a, int size) { for (int index = 0; index < size; index++) { int j = index; for (int k = index + 1; k < size; k++) // for each position in array { if (a[k] < a[j]) {j = k;} // find the smallest Type temp = a[index]; a[index] = a[j]; a[j] = temp; // switch into appropriate place (first, second, third…) } } }

فایل های دیگر این دسته