Ana içeriğe atla

Bubble Sort Kodları

 


Merhaba bubble sort algoritmasının görselleştirme kodlarını aşağıda bulabilirsiniz.


function varargout = Bubble_Sort(varargin)
% BUBBLE_SORT MATLAB code for Bubble_Sort.fig
%      BUBBLE_SORT, by itself, creates a new BUBBLE_SORT or raises the existing
%      singleton*.
%
%      H = BUBBLE_SORT returns the handle to a new BUBBLE_SORT or the handle to
%      the existing singleton*.
%
%      BUBBLE_SORT('CALLBACK',hObject,eventData,handles,...) calls the local
%      function named CALLBACK in BUBBLE_SORT.M with the given input arguments.
%
%      BUBBLE_SORT('Property','Value',...) creates a new BUBBLE_SORT or raises the
%      existing singleton*.  Starting from the left, property value pairs are
%      applied to the GUI before Bubble_Sort_OpeningFcn gets called.  An
%      unrecognized property name or invalid value makes property application
%      stop.  All inputs are passed to Bubble_Sort_OpeningFcn via varargin.
%
%      *See GUI Options on GUIDE's Tools menu.  Choose "GUI allows only one
%      instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES

% Edit the above text to modify the response to help Bubble_Sort

% Last Modified by GUIDE v2.5 22-Dec-2020 22:47:04

% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct('gui_Name',       mfilename, ...
                   'gui_Singleton',  gui_Singleton, ...
                   'gui_OpeningFcn', @Bubble_Sort_OpeningFcn, ...
                   'gui_OutputFcn',  @Bubble_Sort_OutputFcn, ...
                   'gui_LayoutFcn',  [] , ...
                   'gui_Callback',   []);
if nargin && ischar(varargin{1})
    gui_State.gui_Callback = str2func(varargin{1});
end

if nargout
    [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
    gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT


% --- Executes just before Bubble_Sort is made visible.
function Bubble_Sort_OpeningFcn(hObject, eventdata, handles, varargin)
% This function has no output args, see OutputFcn.
% hObject    handle to figure
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
% varargin   command line arguments to Bubble_Sort (see VARARGIN)

% Choose default command line output for Bubble_Sort
handles.output = hObject;

% Update handles structure
guidata(hObject, handles);

% UIWAIT makes Bubble_Sort wait for user response (see UIRESUME)
% uiwait(handles.figure1);


% --- Outputs from this function are returned to the command line.
function varargout = Bubble_Sort_OutputFcn(hObject, eventdata, handles) 
% varargout  cell array for returning output args (see VARARGOUT);
% hObject    handle to figure
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)

% Get default command line output from handles structure
varargout{1} = handles.output;


% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton1 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)

global sayilar;

%sayilar = xlsread('C:\Users\Tuncay\Desktop\ARŞİV\matlab dosyaları\Bubble Sort/Random_Sayilar.xlsx');

[filename, pathname] = uigetfile();
fullname = fullfile(pathname, filename);
sayilar = xlsread(fullname);

bar((1:length(sayilar)),sayilar);

% --- Executes on button press in pushbutton2.
function pushbutton2_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton2 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)

global sayilar;

x=1:length(sayilar);

for i=1:length(sayilar)-1
    for j=i:length(sayilar)
        if sayilar(i)<sayilar(j)
            temp = sayilar(i);
            sayilar(i) = sayilar(j);
            sayilar(j) = temp;
            pause(0.00001)
            %plot(x,sayilar);
            hold off
            bar(x,sayilar,'b');
            hold on
            bar(j,sayilar(j),'r');
%             set(b(1),'FaceColor','r');
        end 
    end
end

% --- Executes on button press in pushbutton3.
function pushbutton3_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton3 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)


global sayilar;

x=1:length(sayilar);

for i=1:length(sayilar)-1
    for j=i:length(sayilar)
        if sayilar(i)>sayilar(j)
            temp = sayilar(i);
            sayilar(i) = sayilar(j);
            sayilar(j) = temp;
            pause(0.00001)
            %plot(x,sayilar);
            hold off
            bar(x,sayilar,'b');
            hold on
            bar(j,sayilar(j),'r');
%             set(b(1),'FaceColor','r');
        end 
    end
end


% --- Executes on button press in pushbutton4.
function pushbutton4_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton4 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)


% --- Executes on button press in pushbutton5.
function pushbutton5_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton5 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)


% --- Executes on button press in pushbutton6.
function pushbutton6_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton6 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)

Yorumlar

Bu blogdaki popüler yayınlar

Matlab Operatörler

Matematiksel operatörler: +  Toplama –  Çıkarma *  Çarpma /  Bölme ^  Üst alma .* Elemanter çarpım ./  Elemanter bölme .^  Elemanter üst alma a+b  Boyutları aynı olan a ve b matrisini toplar. a-b  Boyutları aynı olan a ve b matrislerinin farkını alır. a*b  Sütun sayısı m olan a matrisiyle satır sayısı m olan b matrisini çarpar. a/b  b düzenli kare bir matrisse (determinantı sıfırdan farklıysa), aynı boyutlu a matrisiyle; a*inv(b)işlemini yapar. a.*b  Boyutları aynı olan a ve b matrislerinin elemanlarını karşılıklı olarak çarpar. a./b  Boyutları aynı olan a ve b matrislerinin elemanlarını karşılıklı oranlar. sqrt  Kök alma abs  Mutlak değer rats  Kesirli gösterim Mantıksal operatörler: &  Ve |  Veya ~  Değil /  Bölme Karar operatörleri: >  Büyüktür <  Küçüktür >=  Büyük eşittir <=  Küçük eşittir ==  Eşittir ~=  Eşit değildir

Matlab Random Sayı Üretme

randi() Matlab üzerinde random sayı üretmek için en iyi komut randi() 'dir. rand() fonksiyonu ya da komutu ile de random sayı üretilebilir. Bu yazıda randi() komutunu anlatacağım ve yazının sonundaki link ile birbirinden farklı en tane sayı üretme algoritmasını paylaşacağım. Önemli: Bu sayfadaki matlab fonksiyonları ve açıklamaları matlabın orjinal sayfasından edinilmiştir. https://www.mathworks.com/help/matlab/ref/randi.html Örnek: randi(10,5) > 1'den 10'a kadar 5x5'lik bir random sayı matrisi üret. r = randi(10,5) %matlab komutu r = 5×5 9 1 2 2 7 10 3 10 5 1 2 6 10 10 9 10 10 5 8 10 7 10 9 10 7 Örnek:  randi ([-5,5],10,1) > -5'den başlayıp 5'e kadar 10 satır ve 1 sütuna sahip 10x1'lik bir randım sayı matrisi oluturur. "1" değiştirilerek başka boyutlarda da matris oluşturulabilir. r = randi([-5,