Ev Kişisel Finans Algoritma Karmaşıklığı ile ilgili

Algoritma Karmaşıklığı ile ilgili

Video: Koddan Karmaşıklık Analizi Yapılması 2024

Video: Koddan Karmaşıklık Analizi Yapılması 2024
Anonim

Aptallar İçin Algoritma Kısım Hile sayfası

Algoritmaların karmaşık olduğunu zaten biliyorsunuz. Bununla birlikte, bir algoritmanın ne kadar karmaşık olduğunu bilmeniz gerekir; çünkü daha karmaşık olan algoritma o kadar uzun sürer. Aşağıdaki tablo, çalışma süresine göre sunulan karmaşıklığın çeşitli düzeylerini (en hızlıdan en yavaşa) anlamanıza yardımcı olur.

Karmaşıklık Açıklama
Sabit karmaşıklık O (1) Ne kadar çok girdi girdiğinize bakılmaksızın değişmez bir yürütme süresi sağlar. Her girdi, tek bir yürütme süresi birimi gerektirir.
Logaritmik karmaşıklık O (log n) İşlemlerin sayısı girdiden daha yavaş büyür ve algoritmayı küçük girdilerle daha az verimli, daha büyük olanlarla daha verimli hale getirir. Bu sınıfın tipik bir algoritması ikili aramadır.
Doğrusal karmaşıklık O (n) İşlemler girişle 1: 1 oranında büyür. Tipik bir algoritma, girişi bir kez taradığınızda ve onun her bir öğesine bir işlem uyguladığınızda tekrarlama işlemidir.
Linearitmik karmaşıklık O (n log n) Karmaşıklık, logaritmik ve doğrusal karmaşıklık arasındaki bir karışımı ifade eder. Mergesortsort, Heapsort ve Quicksort gibi verileri sipariş etmek için kullanılan akıllı algoritmaların tipik bir örneğidir.
İkinci dereceden karmaşıklık O (n 2 ) İşlemler, girdi sayısının karesi kadar büyür. Başka yinelemelerde (bilgisayar bilimlerinde iç içe geçmiş yinelemeler olarak adlandırılır) tek bir iterasyona sahip olduğunuzda, karmaşıklığınız karmaşıktır. Örneğin, bir isim listesi var ve en benzer olanları bulmak için her ismi diğer tüm isimlerle karşılaştırıyorsunuz. Bazı daha az etkili sipariş algoritmaları böyle karmaşıklığı sunar: kabarcık sıralama, seçim sıralama ve ekleme sıralama. Bu karmaşıklık düzeyi, algoritmalarınızın bir çözüm bulmadan önce saatlerce hatta günler sürebilir anlamına gelir.
Kübik karmaşıklık O (n 3 ) İşlemler karesel karmaşıklığa göre daha hızlı büyür, çünkü şimdi birden çok iç içe geçmiş yinelemeye sahipsiniz. Bir algoritma bu karmaşıklık derecesine sahipse ve az miktarda veri (100, 000 öğe) işlemek zorunda kalırsanız, algoritma yıllarca çalışabilir. Girişin gücü olan bir dizi işleminiz olduğunda, algoritmanın polinom zamanında çalıştığı anlamına gelir.
Üstel karmaşıklık O (2 n ) Algoritma, eklenen her yeni eleman için önceki işlemlerin iki katı sayı alır. Bir algoritma bu karmaşıklığa sahip olduğunda, küçük sorunlar bile sonsuza kadar sürebilir. Kapsamlı aramalar yapan birçok algoritmanın üstel karmaşıklığı vardır. Bununla birlikte, bu karmaşıklık seviyesi için klasik örnek Fibonacci sayılarının hesaplanmasıdır.
Faktöriyel karmaşıklık O (n!) Bu algoritma, elemanlar arasındaki muhtemel kombinasyonların çokluğundan dolayı karmaşıklığın gerçek bir kabusu ortaya koymaktadır. Düşünüyorsanız: Girişiniz 100 nesneyse ve bilgisayarınızdaki bir işlem 10 999 - 6 saniyedir (günümüzde her bilgisayar için makul bir hız alır), yaklaşık 10 140 yılına ihtiyaç duyarsınız (evrenin yaşının 10 14 yıl olduğu tahmin edildiğinden, imkansız bir zaman süresi). Ünlü bir faktöryal karmaşıklık problemi, bir satış elemanının pek çok şehri ziyaret etmek ve başlangıç ​​şehrine geri dönmek için en kısa güzergahı bulması gereken seyyar satıcı meselesidir.
Algoritma Karmaşıklığı ile ilgili

Editörün Seçimi

Dijital Fotoğrafınızda Odak Noktası Yaratın - mankenler

Dijital Fotoğrafınızda Odak Noktası Yaratın - mankenler

Fotoğraf bir sanat biçimidir. İyi fotoğrafçılar, insanların bakmak isteyeceği çekici bir fotoğraf oluşturmak için kompozisyon kurallarını kullanırlar. Resminizi nasıl görselleştireceğinizi, çerçevede olanı düzenleyebileceğinizi ve ardından ilginç bir fotoğraf oluşturmak için kompozisyon kurallarını nasıl kullanacağınız. Doğal çerçeveleri kullanma Doğal çerçeveleri çizmek için kullanabilirsiniz ...

Dijital Fotoğraf Makinenizi Kullanarak Panoramik Resimler Oluşturma - mankenler

Dijital Fotoğraf Makinenizi Kullanarak Panoramik Resimler Oluşturma - mankenler

Dijital fotoğraf makineniz size yol göstermez panoramik bir fotoğraf çekmek için. Ancak, kesintisiz bir panoramik çekim oluşturmak için çakışan birkaç resim çekebilir ve onları birbirine dikebilirsiniz. Fotoğraf panoramasını oluşturmak için işinize bakalım:

Ham Dosyaları dönüştürme - mankenler

Ham Dosyaları dönüştürme - mankenler

Birçok dijital fotoğraf makinesi, görüntüleri Camera Raw dosya biçiminde veya sadece Ham olarak yakalayabilir. Bu format, JPEG formatında çekim yaparken oluşan olağan post-processing'leri uygulamadan herhangi bir görüntü sensöründen elde edilen ham görüntü verilerini depolar. Ham formatta çekim, bir takım avantajlar sunar. Fakat olumsuz ...

Editörün Seçimi

Ile iBS Dostu Tarçın Krepleri Ghee - dummies'le Domuz Dostu Tarçın Krep

Ile iBS Dostu Tarçın Krepleri Ghee - dummies'le Domuz Dostu Tarçın Krep

Sabahınıza enerji artışı sağlayan krep düşünün endişesizsiniz. Bu tarif, bir sabah herkesin sevebileceği bir Karbonhidrat Diyeti (SCD) versiyonudur.

IBS Sufferers için sardalya Yayılmış Tarif - mankenler

IBS Sufferers için sardalya Yayılmış Tarif - mankenler

Bu aperitif, pumpernickel ekmeği konusunda harika, fakat ayrıca buğdaydan kaçınırsanız, filizlenmiş ekmeği denemek istersiniz. Sardalya, iyi bir kalsiyum ve D vitamini kaynağı olduğu kadar, iltihap düzeylerini azaltmaya yardımcı olduğu bilinen omega-3 yağ asitleri. Kredi: © Digiphoto, 2006 Caroline Nation bunu geliştirdi ...

Editörün Seçimi

ASVAB: Kelime Bilgisi Alt Test Uygulaması - mankenler

ASVAB: Kelime Bilgisi Alt Test Uygulaması - mankenler

ASVAB'da göreceğiniz alt testlerden bir tanesi Kelime Bilgi testi. Test gününde soruların ve biçimin neye benzeyeceği hakkında bir fikir edinmek için aşağıdaki soruları inceleyin. Örnek sorular Kelime Bilgi Zamanı: 35 soru için 11 dakika Talimatlar: Kelime Bilgisi alt testi üçüncü alt testtir ...

ASVAB Paragraf Anlama Alt Sınavında Sözlük Sorularını Nasıl Yanıt Vereceksiniz - mankenler

ASVAB Paragraf Anlama Alt Sınavında Sözlük Sorularını Nasıl Yanıt Vereceksiniz - mankenler

Kelime Bilgisi ASVAB üzerinde alt test, bu tür soru, bir kelimeyi pasaj bağlamında kullanılan şekilde tanımlamanızı gerektirir. Sorunun doğru tanımı, sözcüğün en yaygın anlamı olabilir veya daha az bilinen bir anlam olabilir ...

Sorunlarını Nasıl Yanıtlayalım ASVAB - aumlalar

Sorunlarını Nasıl Yanıtlayalım ASVAB - aumlalar

Sayı problemleri ASVAB üzerinde bulacağınız sayı problemleri oldukça basittir. Sorular, sayıları temel ekleme, çıkarma, çarpma veya bölme ile değiştirmenizi ister. Çoğu kişi bu tür kelime problemlerini oldukça kolay buluyor. Birkaç tane denemek ister misiniz, sadece ayağınızı ıslatmak için mi? Elbette. Jesse ...