Fixed typos in the turkish and added descriptions (#816)

Co-authored-by: Oleksii Trekhleb <trehleb@gmail.com>
This commit is contained in:
ilkererkek 2022-01-22 12:13:29 +03:00 committed by GitHub
parent 41ace46d48
commit 47048202fd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

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