Bilgilendirme : İçerik adresleri değişmiştir. Lütfen, aradığınız içeriği arama kutucuğundan arayınız =)

Aramak istediğiniz sözcüğü giriniz...

Java
Programlama
  • Java
  • Python
  • C++
  • C#
  • MATLAB
  • MIPS Assembly
  • PIC Assembly
Web Prog.
  • HTML
  • CSS
  • PHP
  • Javascript
Veritabanı Prog.
  • SQL
Arama Yap
İstediğin programlama dilinde sınıf, fonksiyon yada bir terimi arama alanına yaz.
Çıkan seçeneklere göz at
Seçenekler arasından senin işine yaradığı seçeneği seç.
İçeriğe göz at
Seçtiğin seçenekte yer alan örneğe bakarak bilgi edin ya da kullan.
MEHMET ERIM
2019-07-30

Açıklama

  • Depth First Search ( Derin Öncelikli Arama ) algoritmasının amaçı graf'daki tüm düğümleri dolaşmaktır.
  • Bu algoritme graf ve ağaç veri yapılarında çalışır.
  • Bu DFS algoritmasında, graf üzerinde dolaşmayı Adjacency Matrix yardımıyla yapıyoruz !

 

Kod

package dfs;

import java.io.File;
import java.util.*;

public class main {
	
	
	
	static boolean visited2[]= {false,false,false,false,false};
			
	static boolean visited[]= {false,false,false,false,false,false};
	
	static int graph3[][]= {
			{0,1,1,0,0,0},
			{1,0,0,1,1,0},
			{1,0,0,0,1,0},
			{0,1,0,0,1,1},
			{0,1,1,1,0,1},
			{0,0,0,1,1,0},
			};
	
	static char table[]= {'*','*','*','*','*','*'};
	
	static int graph2[][]= {
			{0,1,1,0,0,0},
			{1,0,0,1,0,0},
			{1,0,0,1,0,0},
			{0,1,1,0,1,0},
			{0,0,0,1,0,1},
			{0,0,0,0,1,0},
			};
	
	
	static int graph[][]= {
			{0,1,0,0,1},
			{1,0,1,1,1},
			{0,1,0,1,0},
			{0,1,1,0,1},
			{1,1,0,1,0},
			};
	
	
	
	
	public static void DFS(int graph[][],int x){
		

		
		 Stack<Integer> stack = new Stack<>(); 
		 
		 stack.add(x);

		 
		 
		 while(!stack.isEmpty()) {
			 
		
			 boolean b = false;
			 
			 
			 for(int i=0;i<graph.length;i++) {
				 
				 if(graph[x][i] == 1 && !visited[i]) {

					 stack.push(i);
					 x=i;
					 System.out.print(x);
					 b=true;

					 
				 }
				 
				 visited[x]=true;
				 

			 }
			 
			 
			 if(!b) {
				 x = stack.pop();
				 
			 }
			 
			 
			 
			 
			 
		 }
		 
		 
		 
		
		
	}
	
	
	
	public static void main(String args[]) {

		DFS(graph,0);
		
	}

}
İçeriği Paylaş
Facebook
Twitter
Google+
Linkedin
Yorumlar
Biz Kimiz ?
Java, Python, C++, C#, PHP, HTML, CSS, SQL ve MATLAB programlama dillerine ait sınıf ve fonksiyonların tanım ve açıklamalarını içeren bir websitesiyiz.
Günden güne içeriklerimizi yenileyip, arttırıyoruz.