zsh: Sattolo's Random Cyclic Permutation
Publicado por Sandro Marcell (última atualização em 14/04/2010)
[ Hits: 5.143 ]
Homepage: http://sanmarcell.wordpress.com
Simples função que implementa uma variante do algoritmo Fisher-Yates shuffle. Esta implementação foi descrita pela pesquisadora italiana Sandra Sattolo.
#
# Sattolo's Random Cyclic Permutation
# -- Variante do algoritmo Fisher-Yates shuffle
# Sandro Marcell <sandro_marcell@yahoo.com.br>
# Boa Vista, Roraima - 21/03/2010
#
function sattoloCycle {
   zmodload zsh/mathfunc
   (( rand48(seed) ))
   typeset -a array swap
   integer n k
   array=(${*=})
   (( n = ${(w)#array} + 1 ))
   while ((n > 1))
   do
      ((--n))
      (( k = int((n - 1) * rand48()) + 1 ))
      swap+=$array[k]
      array[k]=$array[n]
      array[n]=$swap
   done
   return 0
}
Script para conectar a um servidor ssh
Monitorando espaço em disco com IP dinâmico.
Zentheme-Install - Instala e desinstala temas usando interface gráfica
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
E aí? O Warsaw já está funcionando no Debian 13? [RESOLVIDO] (13)
copiar library para diretorio /usr/share/..... su com Falha na a... (1)
Problema em SSD ao dar boot LinuxMint LMDE FAYE 64 (3)









