Skip to content

Instantly share code, notes, and snippets.

View d3cryptofc's full-sized avatar

Lelzin λ d3cryptofc

View GitHub Profile
@d3cryptofc
d3cryptofc / README.md
Last active December 8, 2025 20:57
ROCLINK 800 - COMMAND LINE ARGUMENTS/OPTIONS | ARGUMENTOS/OPÇÕES DE LINHA DE COMANDO
@d3cryptofc
d3cryptofc / in-slicing-vs-find-offset.py
Last active December 6, 2025 08:13
🐍 Benchmark entre IN, IN + SLICING e FIND + OFFSET: qual é mais eficiente?
"""
Dado uma sequência enorme, você deve descobrir se um
item específico se encontra nela, e você sabe que ele
só pode estar entre o meio e o fim da sequência.
Mas o que seria mais rápido?
1) Percorrer ela inteira: `item in sequence`.
2) Fatiar no meio: `item in sequence[middle:]`.
3) Percorrer da metade: `sequence.find(item, middle)`
"""
Este código é a integração da biblioteca rangesort que foi escrita em C:
https://gist.github.com/d3cryptofc/0629f82f18f58ae6db7caf267a38c607
"""
from __future__ import annotations
import ctypes
from typing import Sequence
/*
De repente pensei: pq não ordenar números usando índices? Nào tornaria mais
rápido se cada numero fosse para sua devida posição?
E então escrevi esse algoritmo que possui complexidade linear O(n)
É ainda mais perfeito para números sequenciais que não possuem repetição, a única
desvantagem é que pra ser mais eficiente você deve saber quantos itens tem
o seu array e qual número entre eles é o menor possível para evitar desperdício de memória.