Git Product home page Git Product logo

kelvins / algorithms-and-data-structures Goto Github PK

View Code? Open in Web Editor NEW
1.0K 1.0K 255.0 3.02 MB

:abacus: Algorithms and Data Structures in several Programming Languages

License: MIT License

Python 25.88% C 17.71% Java 8.07% Go 7.86% C++ 10.03% Ruby 6.75% JavaScript 9.01% Rust 9.57% Swift 2.27% Scala 1.90% Kotlin 0.95%
algorithms data-structures-and-algorithms education hacktoberfest learning practice searching-algorithms sorting-algorithms

algorithms-and-data-structures's Introduction

Hey, I'm Kelvin! 👋

  • 🧑‍💻 Machine Learning Engineer at Nubank
  • 🇧🇷 From Rio Grande do Sul / Living in Santa Catarina
  • 📓 I like to write about technology on Medium
  • 💕 In love with Python, Go, Rust and Scala
  • 🌱 Learning more about Cloud Architecture, Software Engineering and Machine Learning
  • 🤝 You can also find me on LinkedIn

algorithms-and-data-structures's People

Contributors

ajohnsoon avatar ananyasingh2002 avatar andersonhsporto avatar bdadmehr0 avatar carlosdaniel26 avatar danilolmoura avatar dantasb avatar diogo-felipe avatar guzenski avatar hardvan avatar heitor582 avatar hmigl avatar jfmartinz avatar jmj2312 avatar kelvins avatar leandronsp avatar marceloluisdantas avatar martonpaulo avatar matheustorresii avatar metacoder87 avatar mrweast avatar pluto-tofu avatar poskvansk avatar ribmarciojr avatar ricardocarva avatar roberto-dep-martins avatar thecodergus avatar viniciosb avatar vinicius-developer avatar viniciusalberkovics avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

algorithms-and-data-structures's Issues

In dark mode, the Rust icon is almost unnoticeable

While using dark mode on Github, the Rust icon is unnoticeable, which gives the impression that the exercise is missing the Rust implementation.

Tried to use inline CSS in this PR, but it's not ideal since it wouldn't work well in other versions.

Ideally, we should overcome that by changing directly the SVG, maybe.

Screenshot 2023-10-03 at 11 04 05

Adicionar Elixir a lista de linguagens

Sei que por um tempo, a coluna de Elixir será um setor vazio semelhante a Pascal, porem tenho certeza que assim com Rust foi para mim, poderá ser algo útil para dev's novatos em Elixir que estão meio perdido. Além de que se tem Pascal Imagino que terá algum publico para Elixir também. Eu sei que a tabela já esta completa, porem acho que nesse caso deixar o README um pouco mais feio para ter mais variedade é um boa troca.
No momento em que eu postar esta Issue estarei fazendo um pull request com as modificações necessárias, junto ao algoritmo de Fatorial Recursivo em Elixir para a seção não ficar 100% vazia.

Split fibonacci into categories

There are different types of Fibonacci implementations in different languages.
Sometimes multiple implementations in the same file.

We could use the same approach used by "Min and Max" and split it into 3 categories:

  • Fibonacci (Iterative)
  • Fibonacci (Recursive)
  • Fibonacci (Memoization)

This task is related to:

  • Split the Fibonacci row (README) into 3 rows, as described above.
  • Check the current implementation in each language and move it to the correct category.

Translate JavaScript algorithms and comments to English.

Please help translate the algorithms and comments in JavaScript from Portuguese to English, as this would help increase the visibility of the repository, and it's the standard used by the company/people.

--

Por favor ajudem a traduzir os algoritmos e comentários em JavaScript do português para o inglês, pois isso ajudaria a aumentar a visibilidade do repositório, e é o padrão utilizado por empresa/pessoas.

Dúvida sobre utilização

boa tarde, ótima iniciativa do criador, esse repositório é para contribuirmos com algoritmos diferentes de analise de dados ? ou é para incluirmos o código dos mesmos ?
grato .

Algoritmos de Busca Binária

Enquanto estava implementando o algoritmo de busca binária em java, executei um teste para procurar um item maior do que o maior item de lista, foi quando eu me deparei com uma Exception.

Ela acontecia porque eu estava passando o maior índice da lista com o atributo length que retorna o total de elementos, o problema é que como os índices de array começam em 0 quando ele ia comparar o último índice ele tentava sempre procurar o número errado já que a atributo length começa em 1.

Acredito que o mesmo erro possa acontecer em outros algoritmos, Por exemplo, consegui executar o teste em python e junto com essa issue vou subir um pr com a alteração para remover o bug.

Adicionar workflows para checagem estática

Adicionar Github workflows para fazer uma verificação estática do código (lint) com o objetivo de garantir uma padronização qualidade mínima do código.

  • C
  • CPP
  • Java
  • Python
  • Go
  • Ruby
  • Javascript
  • Swift
  • Rust
  • Scala
  • Kotlin

Separar C e C++ em duas colunas

Apesar de alguns códigos serem intercambiáveis, elas são duas linguagens diferentes que possuem padrões e boas práticas diferentes.

Translate Swift algorithms and comments to English.

Please help translate the algorithms and comments in Swift from Portuguese to English, as this would help increase the visibility of the repository, and it's the standard used by the company/people.

--

Por favor ajudem a traduzir os algoritmos e comentários em Swift do português para o inglês, pois isso ajudaria a aumentar a visibilidade do repositório, e é o padrão utilizado por empresa/pessoas.

Translate Kotlin algorithms and comments to English.

Please help translate the algorithms and comments in Kotlin from Portuguese to English, as this would help increase the visibility of the repository, and it's the standard used by the company/people.

--

Por favor ajudem a traduzir os algoritmos e comentários em Kotlin do português para o inglês, pois isso ajudaria a aumentar a visibilidade do repositório, e é o padrão utilizado por empresa/pessoas.

[Swift] [Rust] Adicionar Swift e Rust nas linguagens

Adicionar Swift e Rust nas linguagens

Bom dia, boa tarde, boa noite, eu estava pensando em adicionar as linguagens Swift e Rust às linguagens disponíveis neste repositório, atualmente fiz 10 dos algoritmos presentes em Swift e um amigo meu (@heitor582) concluiu mais 10 em Rust, e acho que seria interessante a inclusão do Swift e do Rust, diante ao crescimento de ambas linguagens.

Improve contribution guidelines

  • Improve contribution guidelines (CONTRIBUTING.md), including step-by-step instructions on how to make changes, validate them and open a PR.
  • Add a link to the CODE-OF-CONDUCT.md document.
  • Remove the CONTRIBUTING-pt-br.md version.

Migrar tabela para HTML

Considerar a migração da tabela para HTML e utilização de ícones relacionados a cada linguagem, por exemplo:

Algoritmos Linguagens de Programação
Algoritmo Dijkstra
Algoritmo Floyd Warshall

Isso facilita a inclusão de novas linguagens e diminui a chance de quebrar o layout da tabela.

Obs.: seria legal talvez incluir todos os ícones mas manter cinza e sem link aqueles que ainda não temos o algoritmo implementado, porém não sei exatamente o quão complexo seria fazer isso.

Translate Go algorithms and comments to English.

Please help translate the algorithms and comments in Go from Portuguese to English, as this would help increase the visibility of the repository, and it's the standard used by the company/people.

--

Por favor ajudem a traduzir os algoritmos e comentários em Go do português para o inglês, pois isso ajudaria a aumentar a visibilidade do repositório, e é o padrão utilizado por empresa/pessoas.

Converter código e comentários para Inglês

Apesar do repositório estar em Português acredito que seria mais interessante se tanto o código quanto os comentários no código estivessem em Inglês, pois este é o padrão adotado por praticamente todas as empresas/pessoas.

Remover Pascal do projeto

Na minha opinião Pascal é uma linguagem de certa forma ultrapassada (não vejo empresas grandes/modernas utilizando ela) e aparentemente não temos muitos contribuidores. Pessoalmente também não tenho interesse em manter algoritmos em Pascal no projeto. Se ninguém tiver algum motivo forte/relevante para mantê-la minha sugestão seria remover.

Adição de algoritmos em Kotlin.

Olá! Seria bastante interessante a adição de algoritmos em Kotlin, sendo que, é uma linguagem em uso crescente e, a Google adotou a posição "Kotlin first". Além do mais, é uma linguagem que aborda tanto o paradigma Orientado a Objetos quanto, paradigma funcional e, é de leitura mais simples(se comparando a Java), remetendo até mesmo ao Swift. Portanto, concluo que, seria bastante interessante
a adição dessa linguagem ao repositório, além de outras mais características que possam ser descritas.

Grato pela a atenção.

Remove author signature from code

Some algorithms have author signature, like this one:

image

I believe we could remove these signatures for some reasons:

  • Most of them have already been changed by other contributors
  • The code does not belong to a specific person
  • Having an author may discourage others from contributing to that code
  • Git keeps history if we need to blame someone 😂

Translate Rust algorithms and comments to English.

Please help translate the algorithms and comments in Rust from Portuguese to English, as this would help increase the visibility of the repository, and it's the standard used by the company/people.

--

Por favor ajudem a traduzir os algoritmos e comentários em Rust do português para o inglês, pois isso ajudaria a aumentar a visibilidade do repositório, e é o padrão utilizado por empresa/pessoas.

Translate Python algorithms and comments to English.

Please help translate the algorithms and comments in Python from Portuguese to English, as this would help increase the visibility of the repository, and it's the standard used by the company/people.

--

Por favor ajudem a traduzir os algoritmos e comentários em Python do português para o inglês, pois isso ajudaria a aumentar a visibilidade do repositório, e é o padrão utilizado por empresa/pessoas.

Translate Java algorithms and comments to English.

Please help translate the algorithms and comments in Java from Portuguese to English, as this would help increase the visibility of the repository, and it's the standard used by the company/people.

--

Por favor ajudem a traduzir os algoritmos e comentários em Java do português para o inglês, pois isso ajudaria a aumentar a visibilidade do repositório, e é o padrão utilizado por empresa/pessoas.

Translate Scala algorithms and comments to English.

Please help translate the algorithms and comments in Scala from Portuguese to English, as this would help increase the visibility of the repository, and it's the standard used by the company/people.

--

Por favor ajudem a traduzir os algoritmos e comentários em Scala do português para o inglês, pois isso ajudaria a aumentar a visibilidade do repositório, e é o padrão utilizado por empresa/pessoas.

Booyer Moore e Compressão

Seria interessante adicionar busca recursiva com Boyer Moore e algoritmos relacionados a compressão de dados como Ring Buffer, LZ, Huffman.

Error executing AlgoritmoDijkstra.c code

Error :

m.c: In function ‘Dijkstra’:
m.c:42:5: error: unknown type name ‘bool’
42 | bool visitados[n]; // Variável que guarda true para os vértices visitados
| ^~~~
m.c:37:1: note: ‘bool’ is defined in header ‘<stdbool.h>’; did you forget to ‘#include <stdbool.h>’?
36 | #include <stdio.h>
+++ |+#include <stdbool.h>
37 | //#include <stdbool.h>
m.c:59:28: error: ‘true’ undeclared (first use in this function)
59 | visitados[min] = true; // Marca o valor a posição do minimo como visitado
| ^~~~
m.c:59:28: note: ‘true’ is defined in header ‘<stdbool.h>’; did you forget to ‘#include <stdbool.h>’?
m.c:59:28: note: each undeclared identifier is reported only once for each function it appears in

solution :‌

Add this library to the code #include <stdbool.h>

Ajuda Kelvin

Fala ai Kelvin, desculpa ta usando a ISSUE pra isso, mas preciso fazer essa lista encadeada junto de pilhas e fila + CRUD, tem como ajudar?

Translate Ruby algorithms and comments to English.

Please help translate the algorithms and comments in Ruby from Portuguese to English, as this would help increase the visibility of the repository, and it's the standard used by the company/people.

--

Por favor ajudem a traduzir os algoritmos e comentários em Ruby do português para o inglês, pois isso ajudaria a aumentar a visibilidade do repositório, e é o padrão utilizado por empresa/pessoas.

Translate C algorithms and comments to English.

Please help translate the algorithms and comments in C from Portuguese to English, as this would help increase the visibility of the repository, and it's the standard used by the company/people.

Update README logos

I recently added new SVG logos to a logos folder in the project root.
It would be nice to update all SVG links from the README.md to point to these new logos.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.