Bem -vindo às minhas estruturas de dados e repositório de algoritmo!? Aqui, você encontrará uma coleção com curadoria de programas implementados em Java, Python e C ++. Esses programas abrangem uma ampla gama de estruturas e algoritmos de dados, incluindo, entre outros, matrizes, listas vinculadas, árvores, gráficos, algoritmos de classificação, técnicas de pesquisa e programação dinâmica.
Seja você um iniciante que procura entender os fundamentos ou um programador experiente com o objetivo de reforçar suas habilidades, este repositório foi projetado para atender a todos os níveis de especialização. Cada programa vem com explicações detalhadas e comentários de código para ajudar no seu entendimento.
Ao explorar esse repositório, você aprofundará sua compreensão de como as estruturas de dados funcionam, aprenderão vários algoritmos e se tornarão proficientes em implementá -los usando Java, Python ou C ++. Você pode usar esses programas como referência, material de estudo ou mesmo como ponto de partida para seus próprios projetos.
Então mergulhe em nossa coleção e embarque em uma jornada de descoberta e aprendizado. Afie suas habilidades de solução de problemas, obtenha insights sobre práticas de codificação eficientes e fortaleça seus conceitos cruciais no mundo das estruturas e algoritmos de dados. Codificação feliz! :)
️ Se você achar meu repositório útil ou se gosta, considere dar uma estrela. Seu apoio me incentiva a continuar trabalhando nele e melhorar sua funcionalidade. Obrigado! ️
Comece explorando os problemas existentes no repositório e identifique um problema em que você está interessado ou algo em que você deseja trabalhar que ainda não esteja lá.
Se o recurso ou correção de bug em que você deseja trabalhar não estiver presente como um problema, crie um novo problema para ele. Explique claramente o problema ou a solicitação de recurso e aguarde que ele seja atribuído a você.
Depois que o problema for atribuído a você, comece a trabalhar nele. Se houver um problema existente relacionado ao tópico escolhido, verifique se ele é atribuído a você antes de prosseguir.
Fork o repositório:
um. Vá para o site do repositório (por exemplo, Github) e clique no botão "Fork".
b. Isso criará uma cópia do repositório na sua conta do GitHub.
Clone o repositório bifurcado:
um. Abra um terminal e navegue até o local onde deseja armazenar o repositório.
b. Use o comando git clone seguido pelo URL do repositório bifurcado para criar uma cópia local.
Crie uma nova filial:
um. Alterne para o diretório do repositório usando o terminal.
b. Crie uma nova ramificação usando o comando git checkout -b ramal -name.
c. Substitua "Nome de ramificação" por um nome descritivo para sua filial (por exemplo, "add-binária-pesquisa").
Adicione seu código:
um. Escreva sua estrutura de dados ou código de algoritmo na pasta apropriada.
b. Inclua comentários que expliquem sua abordagem, complexidade do tempo e complexidade espacial.
c. Forneça uma entrada de amostra e saída para demonstrar a funcionalidade do seu código.
d. Adicione comentários para esclarecer para explicar a lógica e quaisquer etapas importantes.
Verifique se o seu estilo de código corresponde ao estilo do repositório:
um. Revise o código existente no repositório para entender o estilo preferido.
b. Siga as convenções de nomenclatura estabelecidas, o indentação e a formatação.
c. Use nomes significativos de variável e funções que transmitam o objetivo do código.
Teste seu código:
um. Verifique se seu código está correto executando casos de teste relevantes.
b. Verifique se todas as entradas de amostra produzem as saídas esperadas.
c. Considere casos de borda e lidar com eles adequadamente, se aplicável.
Compromete e empurre suas mudanças:
um. Use Git Add -a para encenar todas as alterações que você fez.
b. Run Git Commit -M "Breve descrição de suas alterações" para cometer suas alterações.
c. Por fim, use o nome do git Push Origin-name para empurrar suas alterações no repositório bifurcado.
Crie uma solicitação de tração:
um. Vá para o repositório bifurcado no site (por exemplo, GitHub).
b. Clique no botão "Novo solicitação de tração".
c. Selecione o repositório original no suspensão do repositório base.
d. Escolha sua filial no suspensão "Compare".
e. Forneça um título descritivo e uma descrição detalhada para sua solicitação de tração, incluindo o número da emissão.
f. Clique no botão "Criar solicitação de puxar" para enviar suas alterações para revisão.
Revise e endereço feedback:
um. Monitore a solicitação de tração de qualquer feedback ou sugestão do mantenedor.
b. Faça as alterações necessárias em seu código com base no feedback recebido.
c. Compromete e empurre as alterações no mesmo ramo.
Aguarde a aprovação:
um. O mantenedor revisará seu código e aprovará ou fornecerá feedback adicional.
b. Uma vez aprovado, suas alterações serão mescladas no repositório principal.
Uma vez aprovado, seu código será mesclado no repositório principal. Parabéns pela sua contribuição!
Para contribuição em C ++
/*
Approach:
- Explain the general approach or algorithm behind the code in brief.
Time Complexity: O(n)
- Explain the time complexity of the code.
Space Complexity: O(1)
- Explain the space complexity of the code.
Sample Input:
- Provide an example input.
Sample Output:
- Provide the expected output for the given input.
*/
# include < iostream >
using namespace std ;
int main () {
// Main function to test the code
return 0 ;
}Para contribuição em Java
/*
Approach:
- Explain the general approach or algorithm behind the code in brief.
Time Complexity: O(n)
- Explain the time complexity of the code.
Space Complexity: O(1)
- Explain the space complexity of the code.
Sample Input:
- Provide an example input.
Sample Output:
- Provide the expected output for the given input.
*/
public class CodeExample {
public static void main ( String [] args ) {
// Main function to test the code
}
}Para contribuição em Python
'''
Approach:
- Explain the general approach or algorithm behind the code in brief.
Time Complexity: O(n)
- Explain the time complexity of the code.
Space Complexity: O(1)
- Explain the space complexity of the code.
Sample Input:
- Provide an example input.
Sample Output:
- Provide the expected output for the given input.
'''
def code_example ():
# Function to implement the code logic
pass
if __name__ == "__main__" :
code_example () # Call the function to test the codeNOTA: Você deve substituir os comentários pela explicação real, complexidades, entrada de amostra, saída e lógica de código conforme seus requisitos específicos.