SchultzGames
Para tirar dúvidas, crie um tópico especifico na área "Dúvidas em Geral" e aguarde ser respondido. Evite comentar em tópicos não relacionados a sua dúvida :D
TÓPICOS RECENTES:
Tópico:
Postado em:
Postado por:
Ajuda em código com Events!
Instanciar explosões dentro de uma area circular
Cronor Estudios RECRUTANDO PARA EQUIPE! [Pagando]
Jogo para limitar a nave dentro da tela
Como fazer som de passos no Third Person User Control
[____ADMINISTRAÇÃO____] PRECISO DE AJUDA [DICA PARA SER AJUDADO]
[___COMO UTILIZAR O FÓRUM___] Principais botões e suas funções
[____APOIE O FÓRUM E O CANAL E GANHE RECOMPENSAS____]
Alterar caminho Application.persistentDataPath
[TUTORIAL] Como fazer um ponteiro de VELOCIDADE, RPM, etc na Unity
Acessar câmera frontal
Otimização de array vector3
[TUTORIAL] Converter uma variável String em Vetores
Problema no ontriggerenter!!!!
mover objetos "rigados"
Dúvida com Contador no Unity
Button
Anim em Gif
[RESOLVIDO] Camera ViewPort Rect
Blob Shadows
duvida em comentarios no c#
Tirar mais de uma foto
Easy Criatura Controle IA
Text multiuplayer
using UnityEngine.networking
Ajuda com script de escolhas de ações antes de iniciar jogo
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
ajuda em adcionar novos produtos
[RESOLVIDO] Input field enter
Controles desabilitando
Unity e windows 10
Ajuda com a Câmera (Culling Mask)
Script de Spawn Aleatório
[TUTORIAL] Mover, arremessar e girar objetos com o mouse
Como se faz um mini-mapa?
Geração procedural de mapa para a nova versão do Unity 2018
Como ter varios prefabs com o msm script e um nao alterar o outro?
Como acessar um script que esta no pai?
Movimentação por sqm
Como faço um som parar de tocar?
Mudar skin através de galeria do celular
COMO FAÇO O SISTEMA DE CHUVA ESTILO ETS2 COM GOTAS NO PARA BRISA?
Gerador de senha
troca de cena faz os Botoes UI não funcionarem
Random.State Altera a seed de todos os scripts?
AI Enemy Ajuda
Easy Mesh Combiner MT - Combine suas malhas de maneira rápida e FÁCIL!
Captura de imagem
[Recomendação] Código Limpo
Sobre colisões em objetos 2D
[RESOLVIDO] COMO FAZ PARA DESATIVAR E ATIVAR UM BOTÃO UI PELO TRIGGER??
[TUTORIAL] Importando animação do mixamo para Unity3d.
Dar recompensa ao ver propaganda ADMOB - CONSTRUCT 2 - Intel XDK
Erro Visual Studio Code .NETFramework v4.7.2
[TUTORIAL] Unity 5 - Wheel Collider, veículos, suspensão realista.
(Dúvida) iRDS - Inteligencia artificial para carros.
de flash pra unity
Como faço para por input de agachar
[RESOLVIDO] Unity 2018.3.0f2 (64-bit) não deixa apagar Componente Importado
PlayerPrefs??
[RESOLVIDO] Deslizar nas paredes (3D)
[RESOLVIDO] Ajuda com Instantiate e SetParent
[TUTORIAL] Luz Principal,Luz de Freio,Piscas para Carro,Moto,Caminhão,Ônibus,Etc...
Estou desenvolvendo jogo em FNA XNA e Nao consigo fazer o player agachar
Como fazer objetos com a mesma TAG não se colidir?
Participe da IDB Jam #1
Ajuda com modelo 3d de Casa
COMO PROJETAR ANIMAÇÕES VISUAIS E DE AÚDIO NO VISUAL STUDIO ( WINDOWS FORM)?
[RESOLVIDO] Cena em modo Portrait e Landscape
[TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS
Ajuda em Level Design e arte
[RESOLVIDO] IAP não está funcionando depois que faço o build
Error ao Gerar a KeyStore do Apk Android
Iniciando com Scripted Events
Buscando Equipe para jogo de Terror!
[RESOLVIDO] Erro ao compilar pra android
[RESOLVIDO] Girar Objeto
Erro com Post Processing e com canvas
[Jogo Mobile] Alien - Lost in the space
[TUTORIAL] Assinando um Apk e dicas de instalação e configurações
Webrequest php database
Sistema De Camera De Primeira Pessoa de um Veiculo Para Android
Converter tranform em gameObject
tirar selfie através do celular desenvolvendo app pela unity
[RESOLVIDO] Bug Textura Unity
[RESOLVIDO] Pegar filho pelo nome
Conexão Android MySql hospedado
[Duvida] Script de mover objeto usando o RigidBody
[RESOLVIDO] Remover objeto filho
[RESOLVIDO] Câmera isométrica seguindo o player
[TUTORIAL] Banco de dados || MySQL
[JOGO WINDOWS] "TradeHero"
procuro modeladores e artista para projeto de Moba
[TUTORIAL] Criando um simples Multiplayer [UNITY 5]
Alguêm sabe Configurar RagDoll?
Demo do meu novo jogo
Sistema De Marchas para Veiculos
Script para Tela de Loading ( HELP )
ajuda em inimigos aleatorios
Ontem à(s) 8:55 pm
Ontem à(s) 7:23 pm
Ontem à(s) 7:02 pm
Ontem à(s) 6:34 pm
Ontem à(s) 4:04 pm
Ontem à(s) 9:22 am
Ontem à(s) 9:21 am
Ontem à(s) 9:20 am
Ontem à(s) 9:20 am
Qui Fev 14, 2019 9:00 pm
Qui Fev 14, 2019 8:58 pm
Qui Fev 14, 2019 8:53 pm
Qui Fev 14, 2019 11:57 am
Qua Fev 13, 2019 10:40 pm
Qua Fev 13, 2019 8:10 pm
Qua Fev 13, 2019 1:11 pm
Qua Fev 13, 2019 9:48 am
Qua Fev 13, 2019 9:25 am
Qua Fev 13, 2019 9:23 am
Ter Fev 12, 2019 11:03 pm
Ter Fev 12, 2019 4:15 pm
Ter Fev 12, 2019 4:07 pm
Ter Fev 12, 2019 2:07 pm
Ter Fev 12, 2019 1:14 pm
Ter Fev 12, 2019 4:32 am
Ter Fev 12, 2019 4:06 am
Ter Fev 12, 2019 2:39 am
Ter Fev 12, 2019 2:03 am
Ter Fev 12, 2019 12:54 am
Ter Fev 12, 2019 12:52 am
Ter Fev 12, 2019 12:26 am
Ter Fev 12, 2019 12:26 am
Ter Fev 12, 2019 12:19 am
Ter Fev 12, 2019 12:13 am
Ter Fev 12, 2019 12:05 am
Seg Fev 11, 2019 11:46 pm
Seg Fev 11, 2019 11:28 pm
Seg Fev 11, 2019 10:43 pm
Seg Fev 11, 2019 10:39 pm
Seg Fev 11, 2019 10:30 pm
Seg Fev 11, 2019 10:26 pm
Seg Fev 11, 2019 8:09 pm
Seg Fev 11, 2019 9:53 am
Seg Fev 11, 2019 7:26 am
Dom Fev 10, 2019 7:23 pm
Dom Fev 10, 2019 5:59 pm
Dom Fev 10, 2019 7:19 am
Dom Fev 10, 2019 12:25 am
Sex Fev 08, 2019 12:40 am
Qui Fev 07, 2019 7:53 pm
Qui Fev 07, 2019 6:23 pm
Qui Fev 07, 2019 9:39 am
Qua Fev 06, 2019 5:36 pm
Ter Fev 05, 2019 6:21 pm
Ter Fev 05, 2019 4:32 pm
Seg Fev 04, 2019 9:23 pm
Seg Fev 04, 2019 2:00 pm
Seg Fev 04, 2019 1:58 pm
Seg Fev 04, 2019 11:26 am
Dom Fev 03, 2019 10:39 pm
Dom Fev 03, 2019 3:36 pm
Dom Fev 03, 2019 12:23 pm
Dom Fev 03, 2019 12:54 am
Sab Fev 02, 2019 5:41 pm
Sab Fev 02, 2019 3:28 pm
Sab Fev 02, 2019 1:16 pm
Sex Fev 01, 2019 6:21 pm
Sex Fev 01, 2019 3:24 pm
Sex Fev 01, 2019 11:18 am
Qui Jan 31, 2019 11:17 pm
Qui Jan 31, 2019 9:24 pm
Qui Jan 31, 2019 8:17 pm
Qui Jan 31, 2019 7:21 pm
Qui Jan 31, 2019 3:06 pm
Qui Jan 31, 2019 1:09 pm
Qui Jan 31, 2019 8:27 am
Qui Jan 31, 2019 3:39 am
Qua Jan 30, 2019 10:51 pm
Qua Jan 30, 2019 8:15 pm
Qua Jan 30, 2019 12:48 pm
Qua Jan 30, 2019 11:41 am
Qua Jan 30, 2019 9:18 am
Qua Jan 30, 2019 9:15 am
Qua Jan 30, 2019 9:04 am
Ter Jan 29, 2019 9:26 pm
Ter Jan 29, 2019 3:13 pm
Ter Jan 29, 2019 3:02 pm
Ter Jan 29, 2019 10:31 am
Seg Jan 28, 2019 7:41 pm
Seg Jan 28, 2019 5:29 pm
Seg Jan 28, 2019 4:09 pm
Seg Jan 28, 2019 9:01 am
Dom Jan 27, 2019 8:46 pm
Dom Jan 27, 2019 8:10 pm
Dom Jan 27, 2019 4:13 pm
Dom Jan 27, 2019 1:54 am
Sab Jan 26, 2019 11:02 pm
Sab Jan 26, 2019 5:53 pm
Sex Jan 25, 2019 11:16 pm
bielTuvel
Flávio
MarcosSchultz
Flávio
artplayer
dstaroski
dstaroski
dstaroski
dstaroski
MarcosSchultz
MarcosSchultz
MarcosSchultz
AnderGames
MarcosSchultz
Zack2
Callyde Jr
Weslley
numb123
numb123
Isabela
Weslley
Weslley
Unidade3d5
richerd
hetrodo
Fabio Palacios
MarcosSchultz
Encracker
Encracker
guimaraf
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
Kayke_27
Weslley
hetrodo
AnderGames
Mark1nDeveloper
marcos4503
JohnRambo
guimaraf
Tegh
Kayke_27
dstaroski
wolney.almeida
Tegh
Weslley
guimaraf
JohnRambo
JohnRambo
glauco
speedluk
NKKF
gilgsjr
soohzinha
Lynx777
MayLeone
dimmuo
glauco
KAYLLONBR
JrdeAmorim
Édipo
Agios
vanderval
francisco barroso
bielTuvel
rodrigo Santos
TioUV
michelly
Zack2
SuperGamer
Weslley
marcos4503
dstaroski
dstaroski
Xandao
TecnoGames
numb123
Weslley
Weslley
MayLeone
guimaraf
numb123
mafipt
Valakinhas
Valakinhas
gilgsjr
Joshuaaaa
Gabryellx007
Aimknot
Callyde Jr

[TUTORIAL] Bubble Sort - Algoritmo

Ir em baixo

TUTORIAL [TUTORIAL] Bubble Sort - Algoritmo

Mensagem por MayLeone em Sab Set 08, 2018 5:10 pm


Você já ouvir falar sobre a técnica Bubble Sort

Bubble Sort (ou ordenação em bolha) é um algoritmo de ordenação numérica que consiste em reorganizar os valores de uma coleção (normalmente arrays) de forma que os mesmos sejam reposicionados em ordem decrescente de acordo com o índice da coleção.
Em linguagens de programação como o C# por exemplo, temos funções de ordenação através de LINQ, assim como é feito com dados de tabelas em SQL (vide função OrderBy), mas não deixa de ser interessante estudar este algoritmo de ordenação para fins didáticos e treinar a lógica, mesmo porque, conhecer novos algoritmos e técnicas, nunca é demais.

Como funciona?

O algoritmo consiste em apenas ''trocar'' os valores de um array, de forma que os maiores valores ocupem os primeiros índices, fazendo com que os menores, obviamente, vão ficando por último na indexação.
Graficamente falando, podemos ter como exemplo a seguinte situação (um array de inteiros):



Veja que ao final do processo o array está devidamente ordenado de forma decrescente, assim o maior valor ocupa o primeiro índice, e o menor valor ocupa o último índice da coleção.

Em programação:

Para realizar essa "troca" de valores dentro do array, primeiramente precisamos criar um laço de repetição que percorra toda a coleção, e a validação a ser feita dentro deste laço deve ocorrer sempre entre o elemento atual do laço e o elemento do índice sucessor, como foi feito no exemplo gráfico, onde trocamos os elementos sucessores se estes forem maiores que o elemento anterior.
Para realizar essa validação, deve ser criado outro laço de repetição que tenha um limite menor que o tamanho do array atual, assim evitamos que seja extrapolado o último elemento, ao verificar seu sucessor, que na verdade não há.
Quando se é verificado que o sucessor no array é maior que seu antecessor, realize-se a 'troca', ou seja, o maior valor passa a ocupar o índice de seu antecessor e o menor valor vai para o índice de seu sucessor. Para tal, basta criar uma variável temporária que armazene o valor do elemento do índice atual (para que ele não se perca), e o índice atual recebe o valor de seu sucessor, e o sucessor receba o valor da variável temporária.

Exemplo em C++



Exemplo em C#


Veja que através do output do array podemos visualizar como a coleção ficou ordenada de forma decrescente:


Claro que se você quiser ordenar o array em ordem crescente, basta trocar o sinal da validação do menor (<) para maior (>):

 (saída em output do array em ordem crescente)


Os exemplos neste artigo foram feitos nas linguagens em C++ e C#, mas qualquer linguagem de programação que suporte arrays pode realizar a técnica do Bubble Sort.
MayLeone
MayLeone
ProgramadorMaster

Feminino PONTOS : 787
REPUTAÇÃO : 234
Áreas de atuação : Unity, C++/C#, HTML, CSS, JS, jQuery, PHP, MySQL, XML, Blender
Respeito as regras :

Ver perfil do usuário http://compilemosfacil.blogspot.com.br

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Bubble Sort - Algoritmo

Mensagem por NKKF em Sab Set 08, 2018 5:25 pm

May, sempre tive essa dúvida: Como eu encontro quantos valores há em uma Array em C++?
NKKF
NKKF
ProgramadorMaster

Masculino PONTOS : 2225
REPUTAÇÃO : 435
Idade : 14
Áreas de atuação : Error 404 Not Found.
Respeito as regras :

Ver perfil do usuário http://www.projetounity.esy.es

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Bubble Sort - Algoritmo

Mensagem por Nalfam em Sab Set 08, 2018 7:11 pm

Interessante...
Com isso posso enumerar itens de um inventário para deixá-lo em ordem alfabética, certo?
Nalfam
Nalfam
Membro
Membro

Masculino PONTOS : 293
REPUTAÇÃO : 22
Áreas de atuação : Unity
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Bubble Sort - Algoritmo

Mensagem por MarcosSchultz em Sab Set 08, 2018 11:35 pm

@Nalfam escreveu:Interessante...
Com isso posso enumerar itens de um inventário para deixá-lo em ordem alfabética, certo?

Da, mas acredito eu que em C# já exista algum método pronto para ordenar strings em ordem alfabética.

Fiz um tutorial sobre esse algoritmo que a May postou a um booom tempo atrás:

Link, caso interesse a alguém :D
MarcosSchultz
MarcosSchultz
Administrador

Masculino PONTOS : 61424
REPUTAÇÃO : 2150
Idade : 22
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Bubble Sort - Algoritmo

Mensagem por Nalfam em Dom Set 09, 2018 12:10 am

@MarcosSchultz escreveu:
@Nalfam escreveu:Interessante...
Com isso posso enumerar itens de um inventário para deixá-lo em ordem alfabética, certo?

Da, mas acredito eu que em C# já exista algum método pronto para ordenar strings em ordem alfabética.

Fiz um tutorial sobre esse algoritmo que a May postou a um booom tempo atrás:

Link, caso interesse a alguém :D
Nossa! Muito interessante mesmo!!
Apesar de ser o mesmo algoritmo, é sempre bom ver outras explicações.
Nalfam
Nalfam
Membro
Membro

Masculino PONTOS : 293
REPUTAÇÃO : 22
Áreas de atuação : Unity
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Bubble Sort - Algoritmo

Mensagem por MayLeone em Dom Set 09, 2018 2:12 pm

@NKKF escreveu:May, sempre tive essa dúvida: Como eu encontro quantos valores há em uma Array em C++?
Bom, pra obter o tamanho do array em cpp igual a gente faz em C# (como o ''.Length''), vc precisa utilizar o operador sizeof e dividir pelo ponteiro do sizeof do array, assim:

Código:
int myVector[10];
int length = sizeof(myVector)/sizeof(*myVector);

O retorno de 'length' nesse exemplo vai ser 10.
Pra usar no laço de repetição igual fazemos no C#, basta fazer assim, por exemplo:

Código:
#include <iostream>

int main()
{
  int a[5] = {1, 2, 3, 4, 5};
  int arrayLength = sizeof(a)/sizeof(*a);
  for (int i = 0; i < arrayLength; i++){
      std:: cout << a[i] << std:: endl;
      }
     
      return 0;
}


@Nalfam:
Como disse o Marcos, existem formas alternativas para ordenação alfabética, mesmo porque o Bubble Sort é útil para ordenação numérica.
No caso de uma ordenação alfabética, recomendo que utilize a biblioteca LINQ que tem várias funções de ordenação, muito parecidas com o que temos em SQL.
Um artigo interessante sobre LINQ, eu recomendo este aqui: https://www.devmedia.com.br/introducao-ao-linq/22769
MayLeone
MayLeone
ProgramadorMaster

Feminino PONTOS : 787
REPUTAÇÃO : 234
Áreas de atuação : Unity, C++/C#, HTML, CSS, JS, jQuery, PHP, MySQL, XML, Blender
Respeito as regras :

Ver perfil do usuário http://compilemosfacil.blogspot.com.br

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Bubble Sort - Algoritmo

Mensagem por NKKF em Dom Set 09, 2018 6:58 pm

Obrigado.
NKKF
NKKF
ProgramadorMaster

Masculino PONTOS : 2225
REPUTAÇÃO : 435
Idade : 14
Áreas de atuação : Error 404 Not Found.
Respeito as regras :

Ver perfil do usuário http://www.projetounity.esy.es

Voltar ao Topo Ir em baixo

Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum