fix: converted single to triple backticks5 (#36232)
This commit is contained in:
@@ -18,21 +18,24 @@ localeTitle: جداول تجزئة
|
||||
|
||||
تتمثل فكرة التجزئة في توزيع المدخلات (أزواج المفاتيح / القيم) عبر مجموعة من المجموعات. عند الحصول على مفتاح ، تقوم الخوارزمية بحساب فهرس يشير إلى المكان الذي يمكن العثور فيه على الإدخال:
|
||||
|
||||
`index = f(key, array_size)
|
||||
`
|
||||
```
|
||||
index = f(key, array_size)
|
||||
```
|
||||
|
||||
يتم ذلك غالبًا في خطوتين:
|
||||
|
||||
`hash = hashfunc(key)
|
||||
index = hash % array_size
|
||||
`
|
||||
```
|
||||
hash = hashfunc(key)
|
||||
index = hash % array_size
|
||||
```
|
||||
|
||||
في هذه الطريقة ، يكون التجزئة مستقلاً عن حجم الصفيف ، ثم يتم تخفيضه إلى فهرس (رقم بين 0 و array\_size - 1) باستخدام مشغل modulo (٪).
|
||||
|
||||
دعنا نفكر في السلسلة S. أنت مطالب بحساب معدل تكرار جميع الأحرف في هذه السلسلة.
|
||||
|
||||
`string S = “ababcd”
|
||||
`
|
||||
```
|
||||
string S = “ababcd”
|
||||
```
|
||||
|
||||
إن أبسط طريقة للقيام بذلك هي التكرار على جميع الأحرف الممكنة وحساب ترددها واحدة تلو الأخرى. وقت تعقيد هذا الأسلوب هو O (26 \* N) حيث N هو حجم السلسلة ويوجد 26 حرفًا محتملًا.
|
||||
|
||||
@@ -51,15 +54,16 @@ localeTitle: جداول تجزئة
|
||||
|
||||
انتاج |
|
||||
|
||||
`a 2
|
||||
b 2
|
||||
c 1
|
||||
d 1
|
||||
e 0
|
||||
f 0
|
||||
…
|
||||
z 0
|
||||
`
|
||||
```
|
||||
a 2
|
||||
b 2
|
||||
c 1
|
||||
d 1
|
||||
e 0
|
||||
f 0
|
||||
…
|
||||
z 0
|
||||
```
|
||||
|
||||
دعونا نطبق التجزئة على هذه المشكلة. خذ تردد صفيف من حجم 26 و تجزئة الأحرف 26 مع مؤشرات الصفيف باستخدام دالة التجزئة. ثم ، التكرار فوق السلسلة وزيادة القيمة في التردد في الفهرس المقابل لكل حرف. تعقيد هذا الأسلوب هو O (N) حيث N هو حجم السلسلة.
|
||||
|
||||
@@ -84,15 +88,16 @@ localeTitle: جداول تجزئة
|
||||
|
||||
انتاج |
|
||||
|
||||
`a 2
|
||||
b 2
|
||||
c 1
|
||||
d 1
|
||||
e 0
|
||||
f 0
|
||||
…
|
||||
z 0
|
||||
`
|
||||
```
|
||||
a 2
|
||||
b 2
|
||||
c 1
|
||||
d 1
|
||||
e 0
|
||||
f 0
|
||||
…
|
||||
z 0
|
||||
```
|
||||
|
||||
### تصادم تجزئة
|
||||
|
||||
|
Reference in New Issue
Block a user