1 00:00:07,720 --> 00:00:10,950 [Powered by Google Translate] ربما كنت قد سمعت الناس يتحدثون عن خوارزمية بسرعة وكفاءة 2 00:00:10,950 --> 00:00:13,090 لتنفيذ مهمة معينة، 3 00:00:13,090 --> 00:00:16,110 ولكن ما الذي يعنيه بالضبط لخوارزمية أن تكون سريعة أو كفاءة؟ 4 00:00:16,110 --> 00:00:18,580 حسنا، انها لا نتحدث عن القياس في الوقت الحقيقي، 5 00:00:18,580 --> 00:00:20,500 مثل ثواني أو دقائق. 6 00:00:20,500 --> 00:00:22,220 وذلك لأن أجهزة الحاسوب 7 00:00:22,220 --> 00:00:24,260 والبرامج تختلف اختلافا جذريا. 8 00:00:24,260 --> 00:00:26,020 قد برنامجي تشغيل أبطأ من يدكم، 9 00:00:26,020 --> 00:00:28,000 لأنني تشغيله على كمبيوتر قديم، 10 00:00:28,000 --> 00:00:30,110 أو لأنني يحدث ليكون اللعب لعبة الفيديو على الانترنت 11 00:00:30,110 --> 00:00:32,670 في الوقت نفسه، والذي القص كل ما عندي من الذاكرة، 12 00:00:32,670 --> 00:00:35,400 أو قد تكون قيد التشغيل برنامج I بلدي من خلال البرامج المختلفة 13 00:00:35,400 --> 00:00:37,550 الذي يتصل مع الجهاز بشكل مختلف عند مستوى منخفض. 14 00:00:37,550 --> 00:00:39,650 انها مثل مقارنة التفاح والبرتقال. 15 00:00:39,650 --> 00:00:41,940 لمجرد كمبيوتر أبطأ بلدي وقتا أطول 16 00:00:41,940 --> 00:00:43,410 من يدكم لإعادة جوابا 17 00:00:43,410 --> 00:00:45,510 لا يعني أن يكون لديك خوارزمية أكثر كفاءة. 18 00:00:45,510 --> 00:00:48,830 >> لذلك، لا يمكننا منذ مقارنة مباشرة أوقات التشغيل للبرامج 19 00:00:48,830 --> 00:00:50,140 في ثوان أو دقائق، 20 00:00:50,140 --> 00:00:52,310 كيف يمكننا مقارنة 2 خوارزميات مختلفة 21 00:00:52,310 --> 00:00:55,030 بغض النظر عن الأجهزة الخاصة بهم أو البيئة البرمجيات؟ 22 00:00:55,030 --> 00:00:58,000 لإنشاء طريقة أكثر كفاءة لقياس موحدة حسابي، 23 00:00:58,000 --> 00:01:00,360 لقد توصل علماء الرياضيات والكمبيوتر 24 00:01:00,360 --> 00:01:03,830 مفاهيم لقياس مدى تعقيد مقارب لبرنامج 25 00:01:03,830 --> 00:01:06,110 ويسمى منهج "Ohnotation الكبير ' 26 00:01:06,110 --> 00:01:08,320 لوصف ذلك. 27 00:01:08,320 --> 00:01:10,820 التعريف الرسمي هو أن وظيفة و (خ) 28 00:01:10,820 --> 00:01:13,390 يعمل على ترتيب ز (خ) 29 00:01:13,390 --> 00:01:15,140 إذا كان هناك وجود بعض القيمة (X)، X ₀ و 30 00:01:15,140 --> 00:01:17,630 بعض ثابتة، C، والتي 31 00:01:17,630 --> 00:01:19,340 و (خ) أقل من أو يساوي 32 00:01:19,340 --> 00:01:21,230 أن المراجعة المستمرة مرات ز (خ) 33 00:01:21,230 --> 00:01:23,190 لجميع X X أكبر من ₀. 34 00:01:23,190 --> 00:01:25,290 >> ولكن لا يكون خائفا بعيدا عن تعريف رسمي. 35 00:01:25,290 --> 00:01:28,020 ماذا يعني هذا في الواقع في أقل الناحية النظرية؟ 36 00:01:28,020 --> 00:01:30,580 حسنا، انها في الاساس وسيلة لتحليل 37 00:01:30,580 --> 00:01:33,580 مدى سرعة وقت التشغيل برنامج ينمو مقارب. 38 00:01:33,580 --> 00:01:37,170 وهذا هو، ويبلغ حجم المدخلات الخاصة بك يزيد نحو اللانهاية، 39 00:01:37,170 --> 00:01:41,390 يقول، كنت الفرز مجموعة من حجم 1000 مقارنة مع مجموعة من حجم 10. 40 00:01:41,390 --> 00:01:44,950 كيف يمكن للوقت من برنامجك تنمو؟ 41 00:01:44,950 --> 00:01:47,390 على سبيل المثال، تخيل عد عدد من الشخصيات 42 00:01:47,390 --> 00:01:49,350 في سلسلة أبسط طريقة 43 00:01:49,350 --> 00:01:51,620  من خلال السير السلسلة بأكملها 44 00:01:51,620 --> 00:01:54,790 الرسالة تلو الرسالة وإضافة 1 إلى عداد لكل حرف. 45 00:01:55,700 --> 00:01:58,420 ويقال هذه الخوارزمية لتشغيل في وقت الخطية 46 00:01:58,420 --> 00:02:00,460 مع الاحترام لعدد من الشخصيات، 47 00:02:00,460 --> 00:02:02,670 'ن' في السلسلة. 48 00:02:02,670 --> 00:02:04,910 وباختصار، فإنه يعمل في O (N). 49 00:02:05,570 --> 00:02:07,290 لماذا هذا؟ 50 00:02:07,290 --> 00:02:09,539 حسنا، باستخدام هذا النهج، حسب الوقت 51 00:02:09,539 --> 00:02:11,300 اجتياز السلسلة بأكملها 52 00:02:11,300 --> 00:02:13,920 يتناسب مع عدد من الأحرف. 53 00:02:13,920 --> 00:02:16,480 حساب عدد الأحرف في سلسلة 20-حرف 54 00:02:16,480 --> 00:02:18,580 سوف يستغرق مرتين طالما أنه يأخذ 55 00:02:18,580 --> 00:02:20,330 لحساب الأحرف في سلسلة من 10 أحرف، 56 00:02:20,330 --> 00:02:23,000 لأنه لديك للنظر في جميع الشخصيات 57 00:02:23,000 --> 00:02:25,740 وكل حرف يأخذ نفس المقدار من الوقت للنظر في. 58 00:02:25,740 --> 00:02:28,050 كما يمكنك زيادة عدد الأحرف، 59 00:02:28,050 --> 00:02:30,950 وزيادة وقت التشغيل خطيا مع طول الإدخال. 60 00:02:30,950 --> 00:02:33,500 >> الآن، تخيل إذا قررت ذلك الوقت الخطية، 61 00:02:33,500 --> 00:02:36,390 O (ن)، فقط لم يكن بالسرعة الكافية بالنسبة لك؟ 62 00:02:36,390 --> 00:02:38,750 ربما كنت تخزين سلاسل ضخمة، 63 00:02:38,750 --> 00:02:40,450 وأنت لا تستطيع تحمل الوقت الاضافي الذي سيستغرقه 64 00:02:40,450 --> 00:02:44,000 لاجتياز كل من شخصياتهم العد واحدة تلو الأخرى. 65 00:02:44,000 --> 00:02:46,650 لذلك، عليك أن تقرر لمحاولة شيء مختلف. 66 00:02:46,650 --> 00:02:49,270 ماذا لو كنت يحدث لتخزين بالفعل عدد من الشخصيات 67 00:02:49,270 --> 00:02:52,690 في سلسلة، ويقول، في متغير يسمى 'يون،' 68 00:02:52,690 --> 00:02:54,210 في وقت مبكر من البرنامج، 69 00:02:54,210 --> 00:02:57,800 قبل تخزين حتى الحرف الأول في سلسلة الخاص بك جدا؟ 70 00:02:57,800 --> 00:02:59,980 ثم، جميع كنت عليك القيام به الآن لمعرفة طول السلسلة، 71 00:02:59,980 --> 00:03:02,570 وتحقق ما قيمة المتغير. 72 00:03:02,570 --> 00:03:05,530 لن يكون لكم للنظر في السلسلة نفسها في كل شيء، 73 00:03:05,530 --> 00:03:08,160 والوصول إلى قيمة متغير مثل ليون ويعتبر 74 00:03:08,160 --> 00:03:11,100 عملية مستمرة الوقت مقارب، 75 00:03:11,100 --> 00:03:13,070 أو O (1). 76 00:03:13,070 --> 00:03:17,110 لماذا هذا؟ كذلك، تذكر ما يعني تعقيد مقارب. 77 00:03:17,110 --> 00:03:19,100 كيف تغير حجم ووقت التشغيل 78 00:03:19,100 --> 00:03:21,400 مدخلات الخاص ينمو؟ 79 00:03:21,400 --> 00:03:24,630 >> يقول كنت تحاول الحصول على عدد الأحرف في سلسلة أكبر. 80 00:03:24,630 --> 00:03:26,960 كذلك، فإنه لا يهم كيف كبيرة تقوم بها السلسلة، 81 00:03:26,960 --> 00:03:28,690 حتى مليون حرفا، 82 00:03:28,690 --> 00:03:31,150 جميع كنت ما عليك القيام به للعثور على طول السلسلة مع هذا النهج، 83 00:03:31,150 --> 00:03:33,790 هو قرأ قيمة متغير ليون، 84 00:03:33,790 --> 00:03:35,440 التي قمت بها بالفعل. 85 00:03:35,440 --> 00:03:38,200 طول المدخلات، وهذا هو، وطول السلسلة التي تحاول العثور عليها، 86 00:03:38,200 --> 00:03:41,510 لا يؤثر على الإطلاق مدى سرعة البرنامج الخاص بك يعمل. 87 00:03:41,510 --> 00:03:44,550 وهذا الجزء من البرنامج تشغيل سريع أيضا على سلسلة واحدة حرف 88 00:03:44,550 --> 00:03:46,170 وسلسلة ألف حرف، 89 00:03:46,170 --> 00:03:49,140 وهذا هو السبب وسيتم تحويل هذا البرنامج لتشغيل في وقت والمستمر 90 00:03:49,140 --> 00:03:51,520 فيما يتعلق بحجم المدخلات. 91 00:03:51,520 --> 00:03:53,920 >> بالطبع، هناك عيب. 92 00:03:53,920 --> 00:03:55,710 كنت تنفق اضافية مساحة الذاكرة على جهاز الكمبيوتر الخاص بك 93 00:03:55,710 --> 00:03:57,380 تخزين متغير 94 00:03:57,380 --> 00:03:59,270 والوقت الإضافي الذي يأخذك 95 00:03:59,270 --> 00:04:01,490 للقيام التخزين الفعلي للمتغير، 96 00:04:01,490 --> 00:04:03,390 ولكن النقطة لا يزال قائما، 97 00:04:03,390 --> 00:04:05,060 معرفة كم من الوقت الخاص بك سلسلة كان 98 00:04:05,060 --> 00:04:07,600 لا تعتمد على طول السلسلة على الإطلاق. 99 00:04:07,600 --> 00:04:10,720 لذلك، يتم تشغيله في O (1) أو وقت ثابت. 100 00:04:10,720 --> 00:04:13,070 هذا بالتأكيد لا يعني أن 101 00:04:13,070 --> 00:04:15,610 هذا الرمز الخاص بك يعمل في الخطوة 1، 102 00:04:15,610 --> 00:04:17,470 ولكن بغض النظر عن عدد الخطوات هو عليه، 103 00:04:17,470 --> 00:04:20,019 إذا لم تتغير مع حجم المدخلات، 104 00:04:20,019 --> 00:04:23,420 انها لا تزال مستمرة مقارب التي نمثلها وO (1). 105 00:04:23,420 --> 00:04:25,120 >> كما يمكنك تخمين ربما، 106 00:04:25,120 --> 00:04:27,940 هناك أوقات التشغيل المختلفة كبيرة وكثيرة لقياس O خوارزميات مع. 107 00:04:27,940 --> 00:04:32,980 O (ن) ² خوارزميات تكون أبطأ من خوارزميات مقارب (ن) O. 108 00:04:32,980 --> 00:04:35,910 وهذا هو، حيث وصل عدد العناصر (ن) ينمو، 109 00:04:35,910 --> 00:04:39,280 في نهاية المطاف سوف O (ن) ² خوارزميات يستغرق مزيدا من الوقت 110 00:04:39,280 --> 00:04:41,000 من O (ن) لتشغيل خوارزميات. 111 00:04:41,000 --> 00:04:43,960 هذا لا يعني O (ن) خوارزميات تشغيل أسرع دائما 112 00:04:43,960 --> 00:04:46,410 O ² من الخوارزميات (ن)، وحتى في نفس البيئة، 113 00:04:46,410 --> 00:04:48,080 على نفس الجهاز. 114 00:04:48,080 --> 00:04:50,180 ربما لأحجام صغيرة المدخلات، 115 00:04:50,180 --> 00:04:52,900  قد O (ن) ² خوارزمية فعلا العمل بشكل أسرع، 116 00:04:52,900 --> 00:04:55,450 ولكن، في نهاية المطاف، وحجم المدخلات يزيد 117 00:04:55,450 --> 00:04:58,760 نحو اللانهاية، و(ن) O ² الخوارزمية وقت التشغيل 118 00:04:58,760 --> 00:05:02,000 سوف تطغى في النهاية وقت التشغيل من الخوارزمية (ن) O. 119 00:05:02,000 --> 00:05:04,230 تماما مثل أي وظيفة الرياضية من الدرجة الثانية 120 00:05:04,230 --> 00:05:06,510  ستتفوق في النهاية أي وظيفة خطية، 121 00:05:06,510 --> 00:05:09,200 لا يهم كم من السبق وظيفة خطية يبدأ مع. 122 00:05:10,010 --> 00:05:12,000 إذا كنت تعمل مع كميات كبيرة من البيانات، 123 00:05:12,000 --> 00:05:15,510 الخوارزميات التي تعمل في O (ن) يمكن ² نهاية الوقت حقا حتى إبطاء البرنامج الخاص بك، 124 00:05:15,510 --> 00:05:17,770 ولكن لأحجام صغيرة المدخلات، 125 00:05:17,770 --> 00:05:19,420 وربما لن حتى إشعار. 126 00:05:19,420 --> 00:05:21,280 >> آخر مقارب هو التعقيد، 127 00:05:21,280 --> 00:05:24,420 الوقت لوغاريتمي، O (سجل ن). 128 00:05:24,420 --> 00:05:26,340 مثال على خوارزمية التي تدير هذا بسرعة 129 00:05:26,340 --> 00:05:29,060 هو البحث الثنائية الكلاسيكية الخوارزمية، 130 00:05:29,060 --> 00:05:31,850 لإيجاد عنصر في قائمة بالفعل تم الفرز من العناصر. 131 00:05:31,850 --> 00:05:33,400 >> إذا كنت لا تعرف ما تفعل البحث الثنائية، 132 00:05:33,400 --> 00:05:35,170 ساوضح لك ذلك بسرعة حقا. 133 00:05:35,170 --> 00:05:37,020 دعونا نقول كنت تبحث عن الرقم 3 134 00:05:37,020 --> 00:05:40,200 في هذه المجموعة من الأعداد الصحيحة. 135 00:05:40,200 --> 00:05:42,140 فإنه يبحث في عنصر من الصفيف الأوسط 136 00:05:42,140 --> 00:05:46,830 ويسأل: "هل أريد العنصر أكبر من، يساوي، أو أقل من ذلك؟" 137 00:05:46,830 --> 00:05:49,150 اذا كان على قدم المساواة، ثم كبيرة. وجدت العنصر، والانتهاء من ذلك. 138 00:05:49,150 --> 00:05:51,300 إذا كان أكبر، ثم تعرف على العنصر 139 00:05:51,300 --> 00:05:53,440 يجب أن تكون في الجانب الأيمن من الصفيف، 140 00:05:53,440 --> 00:05:55,200 ويمكنك أن تبحث فقط في ذلك في المستقبل، 141 00:05:55,200 --> 00:05:57,690 وإذا كان أصغر، ثم تعرف أنها يجب أن تكون في الجانب الأيسر. 142 00:05:57,690 --> 00:06:00,980 ثم يتم تكرار هذه العملية مع مجموعة أصغر من الحجم 143 00:06:00,980 --> 00:06:02,870 حتى يتم العثور على العنصر الصحيح. 144 00:06:08,080 --> 00:06:11,670 >> هذه الخوارزمية قوية يخفض حجم الصفيف في نصف مع كل عملية. 145 00:06:11,670 --> 00:06:14,080 لذلك، لإيجاد عنصر في مجموعة مصنفة من حجم 8، 146 00:06:14,080 --> 00:06:16,170 على الأكثر (تسجيل ₂ 8)، 147 00:06:16,170 --> 00:06:18,450 أو 3 من هذه العمليات، 148 00:06:18,450 --> 00:06:22,260 سوف تكون هناك حاجة التحقق من العنصر الأوسط، وقطع ثم الصفيف في النصف، 149 00:06:22,260 --> 00:06:25,670 في حين أن مجموعة من يأخذ حجم 16 (تسجيل ₂ 16)، 150 00:06:25,670 --> 00:06:27,480 أو 4 عمليات. 151 00:06:27,480 --> 00:06:30,570 هذا فقط 1 أكثر عملية لمجموعة وتضاعف الحجم. 152 00:06:30,570 --> 00:06:32,220 مضاعفة حجم الصفيف 153 00:06:32,220 --> 00:06:35,160 يزيد من وقت التشغيل بواسطة فقط 1 قطعة من هذا الرمز. 154 00:06:35,160 --> 00:06:37,770 مرة أخرى، والتحقق من العنصر منتصف القائمة، ثم تقسيم. 155 00:06:37,770 --> 00:06:40,440 لذلك، وقالت انها تعمل في الوقت وغاريتمي، 156 00:06:40,440 --> 00:06:42,440 O (سجل ن). 157 00:06:42,440 --> 00:06:44,270 ولكن الانتظار، ويقول لك، 158 00:06:44,270 --> 00:06:47,510 لا هذا يعتمد على المكان في قائمة العنصر الذي تبحث عنه؟ 159 00:06:47,510 --> 00:06:50,090 ماذا لو كان العنصر الأول نظرتم يحدث أن تكون على حق واحد؟ 160 00:06:50,090 --> 00:06:52,040 ثم، فإنه يأخذ فقط 1 عملية، 161 00:06:52,040 --> 00:06:54,310 مهما كانت كبيرة والقائمة. 162 00:06:54,310 --> 00:06:56,310 >> حسنا، هذا هو السبب في الحصول على مزيد من علماء الكمبيوتر حيث 163 00:06:56,310 --> 00:06:58,770 لتعقيد مقارب التي تعكس أفضل حالة 164 00:06:58,770 --> 00:07:01,050 وأسوأ أداء خوارزمية. 165 00:07:01,050 --> 00:07:03,320 أكثر بشكل صحيح، حدود العليا والدنيا 166 00:07:03,320 --> 00:07:05,090 على وقت التشغيل. 167 00:07:05,090 --> 00:07:07,660 في أفضل الأحوال للبحث ثنائي، عنصر لدينا هو 168 00:07:07,660 --> 00:07:09,330 هناك حق في الوسط، 169 00:07:09,330 --> 00:07:11,770 وتحصل عليه في وقت ثابت، 170 00:07:11,770 --> 00:07:14,240 مهما كانت كبيرة ما تبقى من الصفيف. 171 00:07:15,360 --> 00:07:17,650 رمز يستخدم في ذلك هو Ω. 172 00:07:17,650 --> 00:07:19,930 لذلك، يقال هذه الخوارزمية لتشغيل في Ω (1). 173 00:07:19,930 --> 00:07:21,990 في أفضل الأحوال، فإنه يرى العنصر بسرعة، 174 00:07:21,990 --> 00:07:24,200 مهما كانت كبيرة الصفيف، 175 00:07:24,200 --> 00:07:26,050 ولكن في أسوأ الحالات، 176 00:07:26,050 --> 00:07:28,690 لديها لأداء (سجل ن) الشيكات الانقسام 177 00:07:28,690 --> 00:07:31,030 من الصفيف للعثور على العنصر الصحيح. 178 00:07:31,030 --> 00:07:34,270 ويشار إلى حدود أسوأ العليا لمع "O" الكبيرة التي كنت تعرف مسبقا. 179 00:07:34,270 --> 00:07:38,080 لذلك، فمن O (سجل ن)، ولكن Ω (1). 180 00:07:38,080 --> 00:07:40,680 >> بحث الخطية، على النقيض من ذلك، 181 00:07:40,680 --> 00:07:43,220 الذي يمكنك المشي من خلال كل عنصر من الصفيف 182 00:07:43,220 --> 00:07:45,170 للعثور على واحدة تريد، 183 00:07:45,170 --> 00:07:47,420 هو في أحسن الأحوال Ω (1). 184 00:07:47,420 --> 00:07:49,430 مرة أخرى، فإن العنصر الأول الذي تريد. 185 00:07:49,430 --> 00:07:51,930 لذلك، لا يهم كيف كبيرة الصفيف. 186 00:07:51,930 --> 00:07:54,840 في أسوأ الحالات، انها العنصر الأخير في الصفيف. 187 00:07:54,840 --> 00:07:58,560 لذلك، لديك على المشي من خلال جميع عناصر n في مجموعة للعثور عليه، 188 00:07:58,560 --> 00:08:02,170 أود لو كنت تبحث عن 3. 189 00:08:04,320 --> 00:08:06,030 لذلك، يتم تشغيله في وقت (ن) O 190 00:08:06,030 --> 00:08:09,330 لأنه يتناسب مع عدد العناصر في الصفيف. 191 00:08:10,800 --> 00:08:12,830 >> أكثر واحد رمز المستخدم هو Θ. 192 00:08:12,830 --> 00:08:15,820 ويمكن استخدام هذه الخوارزميات لوصف الحالات حيث أفضل وأسوأ 193 00:08:15,820 --> 00:08:17,440 هي نفسها. 194 00:08:17,440 --> 00:08:20,390 هذا هو الحال في سلسلة خوارزميات طول تحدثنا عنه سابقا. 195 00:08:20,390 --> 00:08:22,780 وهذا هو، إذا كان لنا أن تخزينه في متغير قبل 196 00:08:22,780 --> 00:08:25,160 نقوم بتخزين السلسلة والوصول إليه في وقت لاحق في وقت ثابت. 197 00:08:25,160 --> 00:08:27,920 بغض النظر عن عدد 198 00:08:27,920 --> 00:08:30,130 نحن في تخزين هذا المتغير، سوف يتعين علينا أن ننظر في ذلك. 199 00:08:33,110 --> 00:08:35,110 أفضل الأحوال هو، ونحن ننظر في الأمر 200 00:08:35,110 --> 00:08:37,120 والعثور على طول السلسلة. 201 00:08:37,120 --> 00:08:39,799 حتى Ω (1) أو أفضل حالة مستمرة الوقت. 202 00:08:39,799 --> 00:08:41,059 أسوأ الحالات هي، 203 00:08:41,059 --> 00:08:43,400 ونحن ننظر في الأمر والعثور على طول السلسلة. 204 00:08:43,400 --> 00:08:47,300 لذلك، O (1) أو وقت ثابت في أسوأ الحالات. 205 00:08:47,300 --> 00:08:49,180 لذلك، منذ أحسن الأحوال وأسوأ الحالات هي نفسها، 206 00:08:49,180 --> 00:08:52,520 يمكن هذا وقال لتشغيل في الوقت (1) Θ. 207 00:08:54,550 --> 00:08:57,010 >> وباختصار، لدينا طرق جيدة للتفكير حول كفاءة رموز 208 00:08:57,010 --> 00:09:00,110 دون أن يعرفوا شيئا عن الوقت في العالم الحقيقي الذي يتخذونه لتشغيل، 209 00:09:00,110 --> 00:09:02,270 الذي يتأثر من قبل الكثير من العوامل الخارجية، 210 00:09:02,270 --> 00:09:04,190 بما في ذلك الأجهزة المختلفة، والبرمجيات، 211 00:09:04,190 --> 00:09:06,040 أو خصوصيات التعليمات البرمجية. 212 00:09:06,040 --> 00:09:08,380 أيضا، فإنه يتيح لنا أن سبب وحول ما سيحدث 213 00:09:08,380 --> 00:09:10,180 عندما يزيد حجم المدخلات. 214 00:09:10,180 --> 00:09:12,490 >> إذا كنت تعمل في خوارزمية O ² (ن)، 215 00:09:12,490 --> 00:09:15,240 أو ما هو أسوأ، وO (2 ⁿ) الخوارزمية، 216 00:09:15,240 --> 00:09:17,170 واحدة من أسرع أنواع متزايدة، 217 00:09:17,170 --> 00:09:19,140 عليك أن تبدأ حقا أن نلاحظ التباطؤ 218 00:09:19,140 --> 00:09:21,220 عند بدء العمل مع كميات كبيرة من البيانات. 219 00:09:21,220 --> 00:09:23,590 >> هذا التعقيد مقارب. شكرا.