Skip to content

zcomert/veri-yapilari-ve-algoritmalar

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Veri Yapıları ve Algoritmalar

Veri yapıları ve algoritmaları, bilgisayar bilimlerinin temel taşlarıdır ve bilgisayar biliminin en önemli alanlarından birini oluştururlar. Veri yapıları, bilgisayar programlarında bilgiyi düzenlemek, depolamak ve işlemek için kullanılan yapılardır. Algoritmalar ise belirli bir problemi çözmek veya belirli bir görevi gerçekleştirmek için adım adım talimatları tanımlayan mantıksal işlemlerdir. Bu iki kavram, yazılım geliştirme sürecinde temel bir rol oynar; verimli ve etkili bir şekilde veri yönetimi ve işlemleri için gereklidirler. Veri yapılarının ve algoritmaların iyi anlaşılması, yazılım geliştiricilerin performansı, kodun optimize edilmesi ve hata ayıklama süreçlerinde kritik öneme sahiptir. Bu nedenle, bilgisayar bilimleri alanında çalışan herkesin, veri yapıları ve algoritmaları öğrenmesi ve ustalaşması gerekmektedir.

Bu kod deposu, Samsun Üniversitesi, Mühendislik ve Doğa Bilimleri Fakültesi, Yazılım Mühendisliği Bölümü MYAZ204 Veri Yapıları ve Algoritmalar ve MYAZ206 Veri Yapıları ve Algoritmalar Lab. dersine ait içerikleri kapsamaktadır.

Discord

Derslere ait tartışmalara katılmak, ek materyallere erişmek ve anlık bildirimleri almak üzere lütfen Discord kanalı üye olunuz.

Discord Kanalına Katılmak için tıklayınız.

Proje Altyapısı

Projede kullanılan çerçeve framework ve proje şablonları aşağıda listenmiştir.

.net8

classlib

xunit

console

mvc

Hafta 01

  • Veri Yapıları ve Algoritmalara Giriş
  • Veri Tipleri
  • Değer ve Referans Tipler

Uygulama

  • Değer ve Referans Tipler
  • Maths Kütüphanesinin Test Edilmesi
  • Number sınıfının Test Edilmesi
  • Series sınıfının Test Edilmesi

Hafta 02

  • Diziler
  • Static Array

Uygulama

  • Static Array Testleri

Hafta 03

  • Diziler
  • Dynamic Array (Array)

Uygulama

  • Array Testleri

Hafta 04

  • LinkedList
  • SinglyLinkedList

Uygulama

  • SinglyLinkedListTests

Hafta 05

  • Iterable / IEnumerable
  • IEnumerator
  • SinglyLinkedListNumerator

Uygulama

  • SinglyLinkedListEnumeratorTests
  • LinkedListProblems Solutions

Hafta 06

  • DoublyLinkedListNode
  • DoublyLinkedList
  • DobulyLinkedListEnumerator

Uygulama

  • DoublyLinkedNodeTests
  • DoublyLinkedListTests
  • DoublyLinkedEnumeratorTests

Hafta 07

  • Abstact Data Type (ADT)
  • IStack
  • ArrayStack
  • LinkedListStack
  • Stack

Uygulama

  • ArrayStackTests
  • LinkedListStackTests
  • StackTests

Hafta 08

  • Ramazan Bayramı Tatili

Hafta 09

  • Vizeler

Hafta 10

  • IQueue
  • Queue
  • ArrayQueue
  • LinkedListQueue

Uygulama

  • ArrayQueueTest
  • LinkedListQueueTest

Hafta 11

  • Node
  • Trees
  • Binary Tree
  • Traverse in Binary Tree

Uygulama

  • NodeTests
  • BinaryTreeTests

Hafta 12

  • BST

Uygulama

  • BST Tests

Hafta 13

  • Görevlendirme

Hafta 14

  • Priority Queue
  • MaxHeap
  • MinHeap

Uygulama

  • MaxHeapTests
  • MinHeapTests

Hafta 15

  • Disjoint Set

Uygulama

  • Disjonit Set Tests