3
3
[ ![ CI] ( https://github.com/trekhleb/javascript-algorithms/workflows/CI/badge.svg )] ( https://github.com/trekhleb/javascript-algorithms/actions?query=workflow%3ACI+branch%3Amaster )
4
4
[ ![ codecov] ( https://codecov.io/gh/trekhleb/javascript-algorithms/branch/master/graph/badge.svg )] ( https://codecov.io/gh/trekhleb/javascript-algorithms )
5
5
6
- Bu repository JavaScript'e ait popüler
7
- algoritma ve veri yapılarını içermektedir.
6
+ Bu repository popüler algoritmaların ve veri yapılarının birçoğunun Javascript tabanlı örneklerini bulundurur.
8
7
9
8
Her bir algoritma ve veri yapısı kendine
10
9
ait açıklama ve videoya sahip README dosyası içerir.
@@ -31,7 +30,7 @@ olup üretim için **yaplılmamıştır**.*
31
30
## Veri Yapıları
32
31
33
32
Bir veri yapısı, verileri bir bilgisayarda organize etmenin ve depolamanın belirli bir yoludur, böylece
34
- verimli bir şekilde erişilebilir ve değiştirilebilir. Daha doğrusu , bir veri yapısı bir veri koleksiyonudur,
33
+ verimli bir şekilde erişilebilir ve değiştirilebilir. Daha iyi ifadeyle , bir veri yapısı bir veri koleksiyonudur,
35
34
aralarındaki ilişkiler, ve işlevler veya işlemler
36
35
veriye uygulanabilir.
37
36
@@ -57,8 +56,8 @@ veriye uygulanabilir.
57
56
58
57
## Algoritmalar
59
58
60
- Bir algoritma, bir problem sınıfının nasıl çözüleceğine dair kesin bir tanımlamadır. Bu
61
- bir işlem dizisini kesin olarak tanımlayan bir dizi kural .
59
+ Bir algoritma, bir problem sınıfının nasıl çözüleceğine dair kesin bir tanımlamadır.
60
+ Bir işlem dizisini açık olarak tanımlayan kurallar dizisidir .
62
61
63
62
64
63
` B ` - Başlangıç, ` A ` - İleri Seviye
@@ -67,45 +66,49 @@ bir işlem dizisini kesin olarak tanımlayan bir dizi kural.
67
66
68
67
* ** Matematik**
69
68
* ` B ` [ Bit Manipülasyonu] ( src/algorithms/math/bits ) - set/get/update/clear bits, multiplication/division by two, make negative etc.
69
+ * ` B ` [ İkili Kayan Nokta] ( src/algorithms/math/binary-floating-point ) - kayan noktalı sayıların ikilik sistemde gösterimi.
70
70
* ` B ` [ Faktöriyel] ( src/algorithms/math/factorial )
71
71
* ` B ` [ Fibonacci Sayısı] ( src/algorithms/math/fibonacci ) - klasik ve kapalı-form versiyonları
72
- * ` B ` [ Asallık Testi] ( src/algorithms/math/primality-test ) (trial division method )
72
+ * ` B ` [ Asallık Testi] ( src/algorithms/math/primality-test ) (deneyerek bölüm metodu )
73
73
* ` B ` [ Öklid Algoritması] ( src/algorithms/math/euclidean-algorithm ) - En büyük ortak bölen hesaplama (EBOB)
74
74
* ` B ` [ En küçük Ortak Kat] ( src/algorithms/math/least-common-multiple ) (EKOK)
75
- * ` B ` [ Sieve of Eratosthenes ] ( src/algorithms/math/sieve-of-eratosthenes ) - belirli bir sayıya kadarki asal sayıları bulma
75
+ * ` B ` [ Eratosten Kalburu ] ( src/algorithms/math/sieve-of-eratosthenes ) - belirli bir sayıya kadarki asal sayıları bulma
76
76
* ` B ` [ Is Power of Two] ( src/algorithms/math/is-power-of-two ) - sayı ikinin katı mı sorgusu (naive ve bitwise algoritmaları)
77
77
* ` B ` [ Paskal Üçgeni] ( src/algorithms/math/pascal-triangle )
78
- * ` B ` [ Karmaşık Sayılar] ( src/algorithms/math/complex-number ) - karmaşık sayılar ve bunlarla temel işlemler
79
- * ` B ` [ Radyan & Derece] ( src/algorithms/math/radian ) - radyandan dereceye çeviri ve tersi
78
+ * ` B ` [ Karmaşık Sayılar] ( src/algorithms/math/complex-number ) - karmaşık sayılar ve karmaşık sayılar ile temel işlemler
79
+ * ` B ` [ Radyan & Derece] ( src/algorithms/math/radian ) - radyandan dereceye çeviri ve tersine çeviri
80
80
* ` B ` [ Fast Powering] ( src/algorithms/math/fast-powering )
81
+ * ` B ` [ Horner's method] ( src/algorithms/math/horner-method ) - polinomal ifadelerin değerlendirilmesi
82
+ * ` B ` [ Matrices] ( src/algorithms/math/matrix ) - matrisler ve basit matris operasyonları (çarpım, tersçapraz, vb.)
83
+ * ` B ` [ Euclidean Distance] ( src/algorithms/math/euclidean-distance ) - iki nokta/vektör/matris arasındaki mesafe
81
84
* ` A ` [ Tamsayı Bölümü] ( src/algorithms/math/integer-partition )
82
85
* ` A ` [ Karekök] ( src/algorithms/math/square-root ) - Newton yöntemi
83
86
* ` A ` [ Liu Hui π Algoritması] ( src/algorithms/math/liu-hui ) - N-gons'a göre yaklaşık π hesabı
84
- * ` A ` [ Ayrık Fourier Dönüşümü] ( src/algorithms/math/fourier-transform ) - bir zaman fonksiyonunu (bir sinyal) onu oluşturan frekanslara ayırır
87
+ * ` A ` [ Ayrık Fourier Dönüşümü] ( src/algorithms/math/fourier-transform ) - bir zaman fonksiyonunu (sinyal) içerdiği frekanslara ayırın
85
88
* ** Setler**
86
- * ` B ` [ Kartezyen Ürün] ( src/algorithms/sets/cartesian-product ) - product of multiple sets
89
+ * ` B ` [ Kartezyen Ürün] ( src/algorithms/sets/cartesian-product ) - birden fazla kümenin çarpımı
87
90
* ` B ` [ Fisher–Yates Shuffle] ( src/algorithms/sets/fisher-yates ) - sonlu bir dizinin rastgele permütasyonu
88
- * ` A ` [ Power Set] ( src/algorithms/sets/power-set ) - all subsets of a set (bitwise and backtracking solutions )
91
+ * ` A ` [ Power Set] ( src/algorithms/sets/power-set ) - all subsets of a set (bit düzeyinde ve geri izleme yöntemleri )
89
92
* ` A ` [ Permütasyonlar] ( src/algorithms/sets/permutations ) (tekrarlı ve tekrarsız)
90
93
* ` A ` [ Kombinasyonlar] ( src/algorithms/sets/combinations ) (tekrarlı ve tekrarsız)
91
94
* ` A ` [ En Uzun Ortak Altdizi] ( src/algorithms/sets/longest-common-subsequence ) (LCS)
92
95
* ` A ` [ En Uzun Artan Altdizi] ( src/algorithms/sets/longest-increasing-subsequence )
93
96
* ` A ` [ En Kısa Ortak Üst Sıra] ( src/algorithms/sets/shortest-common-supersequence ) (SCS)
94
- * ` A ` [ Knapsack Problem] ( src/algorithms/sets/knapsack-problem ) - "0/1" and "Unbound" ones
95
- * ` A ` [ Maksimum Altdizi] ( src/algorithms/sets/maximum-subarray ) - "Brute Force " ve "Dinamik Programlara" (Kadane'nin) versiyonu
97
+ * ` A ` [ Knapsack Problem] ( src/algorithms/sets/knapsack-problem ) - "0-1 sırt çantası problemi" ve "Sınırsız sırt çantası problemi"
98
+ * ` A ` [ Maksimum Altdizi] ( src/algorithms/sets/maximum-subarray ) - "Kaba Kuvvet " ve "Dinamik Programlara" (Kadane'nin) versiyonu
96
99
* ` A ` [ Kombinasyon Toplamı] ( src/algorithms/sets/combination-sum ) - belirli toplamı oluşturan tüm kombinasyonları bulun
97
100
* ** Metin**
98
101
* ` B ` [ Hamming Mesafesi] ( src/algorithms/string/hamming-distance ) - sembollerin farklı olduğu konumların sayısı
99
102
* ` A ` [ Levenshtein Mesafesi] ( src/algorithms/string/levenshtein-distance ) - iki sekans arasındaki minimum düzenleme mesafesi
100
- * ` A ` [ Knuth–Morris–Pratt Algoritması] ( src/algorithms/string/knuth-morris-pratt ) (KMP Algorithm) - substring search (pattern matching )
103
+ * ` A ` [ Knuth–Morris–Pratt Algoritması] ( src/algorithms/string/knuth-morris-pratt ) (KMP Algorithm) - altmetin araması (örüntü eşleme )
101
104
* ` A ` [ Z Algoritması] ( src/algorithms/string/z-algorithm ) - altmetin araması (desen eşleştirme)
102
105
* ` A ` [ Rabin Karp Algoritması] ( src/algorithms/string/rabin-karp ) - altmetin araması
103
106
* ` A ` [ En Uzun Ortak Alt Metin] ( src/algorithms/string/longest-common-substring )
104
107
* ` A ` [ Regular Expression Eşleme] ( src/algorithms/string/regular-expression-matching )
105
108
* ** Aramalar**
106
109
* ` B ` [ Doğrusal Arama] ( src/algorithms/search/linear-search )
107
- * ` B ` [ Jump Search] ( src/algorithms/search/jump-search ) (ya da Block Search) - sıralı dizide ara
108
- * ` B ` [ İkili Arama] ( src/algorithms/search/binary-search ) - sıralı dizide ara
110
+ * ` B ` [ Jump Search] ( src/algorithms/search/jump-search ) (ya da Block Search) - sıralı dizide arama
111
+ * ` B ` [ İkili Arama] ( src/algorithms/search/binary-search ) - sıralı dizide arama
109
112
* ` B ` [ Interpolation Search] ( src/algorithms/search/interpolation-search ) - tekdüze dağıtılmış sıralı dizide arama
110
113
* ** Sıralama**
111
114
* ` B ` [ Bubble Sort] ( src/algorithms/sorting/bubble-sort )
@@ -264,7 +267,7 @@ npm test -- 'playground'
264
267
265
268
### Big O Notation
266
269
267
- * Big O notation * , algoritmaları, giriş boyutu büyüdükçe çalışma süresi veya alan gereksinimlerinin nasıl arttığına göre sınıflandırmak için kullanılır.
270
+ * Big O notation * , algoritmaları, girdi boyutu büyüdükçe çalışma süresi veya alan gereksinimlerinin nasıl arttığına göre sınıflandırmak için kullanılır.
268
271
Aşağıdaki grafikte, Big O gösteriminde belirtilen algoritmaların en yaygın büyüme sıralarını bulabilirsiniz.
269
272
270
273
![ Big O graphs] ( ./assets/big-o-graph.png )
0 commit comments