User:Map: Difference between revisions
No edit summary |
|||
(3 intermediate revisions by the same user not shown) | |||
Line 5: | Line 5: | ||
== '''PC update''' == |
== '''PC update''' == |
||
First |
|||
<code>sudo apt-get update</code> |
<code>sudo apt-get update</code> |
||
then |
|||
<code>sudo apt-get dist-upgrade</code> |
<code>sudo apt-get dist-upgrade</code> |
||
Line 12: | Line 17: | ||
* Naive Bayes, important baseline in AI, concept simple mais ce serait bien de l'appliquer une fois moi-même: https://en.wikipedia.org/wiki/Naive_Bayes_classifier |
* Naive Bayes, important baseline in AI, concept simple mais ce serait bien de l'appliquer une fois moi-même: https://en.wikipedia.org/wiki/Naive_Bayes_classifier |
||
Naive Bayes is a special case of a bayesian network (as are hidden markov models). A bayesian network (AI course, part 16) is a probabilistic graphical model (?), and is a graphical representation of the assumed dependencies and independencies of the random variables, which can drastically reduce the inference time... (?). |
|||
Naive Bayes: voir AI course part 20. Simply count the frequencies in data to estimate the probabilities. |
|||
== '''Informatique''' == |
== '''Informatique''' == |
Latest revision as of 12:49, 28 October 2024
Cooking
Page cooking recipes
PC update
First
sudo apt-get update
then
sudo apt-get dist-upgrade
Trucs à étudier
- Naive Bayes, important baseline in AI, concept simple mais ce serait bien de l'appliquer une fois moi-même: https://en.wikipedia.org/wiki/Naive_Bayes_classifier
Naive Bayes is a special case of a bayesian network (as are hidden markov models). A bayesian network (AI course, part 16) is a probabilistic graphical model (?), and is a graphical representation of the assumed dependencies and independencies of the random variables, which can drastically reduce the inference time... (?).
Naive Bayes: voir AI course part 20. Simply count the frequencies in data to estimate the probabilities.
Informatique
Voir liens dans notes téléphone.
Visualisations algorithmes:
https://github.com/trekhleb/javascript-algorithms
https://github.com/trekhleb/javascript-algorithms/tree/master/src/algorithms/sorting/insertion-sort
https://github.com/trekhleb/javascript-algorithms/tree/master/src/algorithms/sorting/quick-sort
Visualisations data structures:
https://www.cs.usfca.edu/%7Egalles/visualization/Algorithms.html
With code source:
https://homepages.bluffton.edu/%7Enesterd/java/SortingDemo.html
Timsort:
https://skerritt.blog/timsort-the-fastest-sorting-algorithm-youve-never-heard-of/
Appendre avec des exemples:
https://learnxinyminutes.com/docs/c/
https://learnxinyminutes.com/docs/python/
Autres sources:
Openclassroom
Tutorialspoint
Project Euler
Franceioi
UVA online judge
uhunt online judge
Kattis
Codeforces
cppreference.com
cplusplus.com
beoitraining
beoitraining github https://github.com/be-oi/beoi-training
Commandes terminal
VOIR "CommandesTerminal" dans "Programmesetc"
cd
pour "change directory"
par exemple cd Documents/maths/envoi5exo7ofm2016-2017
Si on tape seulement cd
, on se retrouvera dans "home".
pwd
pour "print working directory" indique où on se trouve actuellement.
- On peut essayer les commandes
help
ouman
("man" pour "manuel") pour avoir des informations/expliquations sur une commande.
- Si on veut exécuter le programme contenu dans le fichier "a.out" se trouvant dans "Documents/uva", et qu'on se trouve déjà dans "Documents/uva", on peut seulement taper
<./a.out>
suivi des input attendus par le programme. Sinon on tapecd Documents/uva/a.out
suivi des entrées du programme.
- la commande
cat
permet d'afficher le contenu d'un fichier. Par exemplecat
- la commande
ls
pour "list" indiquera tous les fichiers se contenus dans le working directory (il y a aussils sousFichier
).
la commande similaire ll
pour "long list" donnera plus d'information sur les fichiers en question.
g++ -std=c++11 -Wall -Wextra -Wshadow -O2 a.cpp
permet de compiler. ici on a compilé le fichier "a.cpp", qui nous a donné le fichier "a.out", contenant le programme exécutable par l'ordinateur.
./a.out < ... > ...
: la premiere partie./a.out
est le programme qu'on exécute. La 2e partie entre les "<" et ">" est le fichier dans lequel on prend les entrées et la partie après ">" est le fichier dans lequel on va enregistrer les sorties.
- à écrire: commande pour créer (
joe nomfichier
je crois), renommer (mv nomfichier nouveaunomfichier
?), afficher (cat nomfichier
), et comparer (et copier, effacer (rm nomfichier
je crois), sauver (^KX
je crois) ...) fichiers contenant un input, contenant l'output correspondant et l'output de référence auquel on veut le comparer (copier le makefile et ensuite utiliser la commandemake
dans le terminal).
- copier-coller dans le terminal :
Ctrl + shift + C/V
.
mkdir nomDossier
pour créer un dossier (make directory),rmdir
to remove (only if empty),rmdir -rf nameDir
va supprimer tout le dossier, avec les sous-fichiers (-
indique qu'on va donner des options,r
pour "récursif",f
pour qu'aucune confirmation ne soit demandée (-> ATTENTION))
- option
-f
pour qu'on ne demande pas de confirmation?
python3.8 a.py
,python3.8 a.py < test1 > out1
diff out1 out2
pour comparer deux fichiers,diff -q out1 out2
(q pour "quiet", pour pas visualiser les détails, juste savoir si égaux ou non)
- Deux commandes équivalentes:
diff <(python3 prog.py < in1) out1
(donne l'output de prog.py à diff) etpython3 prog.py < in1 | diff - out1
- Le pipe
|
donne la sortie du programme de gauche comme entrée à celui de droite
for f in *.in; do echo "$f"; done
test.01.in
test.02.in
test.03.in
for f in *.in; do echo "$f" ; diff <(python3 prog.py < "$f") ${f/.in/.out}; done
, "${f/.in/.out}" nous permet de prendre le contenu de la variable "f", de remplacer le ".in" par un ".out" et de renvoyer le résultat.
time
Pour mesurer le temps mis par un programme pour s'exécuter,time ./prog <test.01.in
- "shell" est le programme qui, dans le terminal, interprète les différentes commandes tappées. (bash est le language(?))
ulimit
pour fixer une limite de mémoire (-s
,-v
,-a
)
seq nbFin
,seq nbDebut nbFin
,seq nbDebut saut nbFin
affichent des séquences (nbDebut, nbDebut+saut, ..., nbFin)
gedit nomFichier.txt
pour ouvrir le fichier (et éventuellemnt le créer),gedit nomFichier.txt &
pour pvr éditer le fichier tout en continuant à tapper des commandes
- Editeurs emacs et vim: "pour Emacs, lancez
emacs
puis allez dans Help > Emacs Tutorial ; suivez alors le tutoriel.", "pour Vim, lancezvimtutor
puis suivez le tutoriel."
groups
pour afficher les groupes dont je fais partie
time python3.8 programme.py
,time -v python3.8 programme.py
Python
Voir notespython.py dans Unif/INFORMATICA.
Voir Mesnotes dans programmesetc/Python.
Lire "Python in a Nutshell" (/smb/wolverine/family/archive/ebooks/python/Python_in_a_Nutshell_Third_Edition-PERSONAL_COPY.pdf
) chapitres 3 et 4.
Apprendre avec des exemples: https://learnxinyminutes.com/docs/python/
command | comment |
# | comment |
help(input) | |
import math from math import * from math import sin, exp from datetime import date |
(importer des modules: voir 2.2.7 et 7.6 dans livre unif) ici aussi on importe tout le module on importe qu'une partie du module ... |
Class str: isdigit(), "123".isdigit() endswith(suffix), str.endswith(s,suffix) str.split(s), s.split(), s.split(" "), "123".split() |
|
"\u0021" | returns '!' |
chr(code) | donne le caractère de code unicode donné |
ord(char) | done l'unicode du caractère donné |
assert < Boolean Expression > | |
random() | from module random |
random.randint(a,b) | random int between a and b |
... | ... |
C++
Voir voc.cpp dans Documents/Informatique
Competitive programmer's handbook: https://cses.fi/book/book.pdf
Other book on competitive programming: https://www.comp.nus.edu.sg/~stevenha/myteaching/competitive_programming/cp1.pdf
C
Lire tout le livre "C - Kernighan and Ritchie" (à part éventuellement les annexes): /smb/wolverine/family/archive/ebooks/c_cpp/Kernighan_Ritchie_Language_C_2ed.pdf
.
Apprendre avec des exemples: https://learnxinyminutes.com/docs/c/
LaTeX
Mais sur le wiki je peux utiliser MathJax __MATHJAX_DOLLAR__: $\sqrt{2 \over 3}$ et bien sûr en plus grand: $$\sqrt{2 \over 3}$$
Pour utiliser MathJax, je ne dois pas oublier d'ajouter le mot-clè __MATHJAX_DOLLAR__
quelque part sur la page, sinon les formules "en petit" avec un seul signe dollar ($...$
) ne fonctionnent pas.
Références
Afficher des symboles spéciaux en latex: http://deuns.chez.com/latex/carac.html . Par exemple: utiliser \textasciicircum
pour afficher ^
!
Editer un texte
- Il faut d'abord aller dans le bon répertoire: (symbole dollar)
cd nom du répertoire
. Ex.: (symbole dollar)cd Documents/maths/synthese/
- (symbole dollar)
history | grep make
: chercher dans l'historique les commandes avec make - (symbole dollar)
find -name "*.tex" | entr make
: commande qu'on peut trouver grâce au point précédent: chaque fois qu'on sauve dans gedit, il fait "make" tout seul. - Pour changer le format d'une fenêtre avec le clavier numérique: ctrl+alt+1=quart d'écran bas-gauche, ctrl+alt+6=demi écran droit, ctrl+alt+5=centrer
- exemples de figures en Latex: http://texample.net/
Maths
Mes liens
Sur ce wiki:
Mes notes
- Accéder à wolverine: computer/smb/wolverine
Régler des problèmes d'impression
- Aller sur internet
- taper dans la barre de recherche "localhost:631"
- Aller dans "Administration" (tout en haut de la page)
- Aller ensuite dans "Printers > Manage printers
- Cliquer sur "Canon-MG5300-series"
- Parfois il faut changer "maintenance" en "resume"
En cas de manque d'espace de stockage : effacer les mises-à-jour précédentes
Aller dans ubuntu tweak, computer janitor, old kernel
MediaWiki
Keyboard shortcuts
Shift-Esc | Show keyboard shortcuts |
Shift-Esc-F | Find, Search |
Shift-Esc-P | Show Preview |
Shift-Esc-S | Save page |
WikiText
- References
On peut écrire en gras (bold en anglais), en italic (euh... italic en anglais), en souligné (underlined).
Grâce à mon super papa, je peux aussi facilement écrire en couleur comme en rouge, en vert, en bleu. Trop fort mon papa.
J'ai faim, donc je mange des boulettes:
- Une boulette
- Deux boulettes
- Une soupe de boulette, non... une sous-boulette.
Mais moi je trip avec des chiffres:
- Un chiffre.
- Deux chiffres.
- Un chiffre à la boulette.
Pour des listes plus compliquées (c'est le mot officiel... liste):
-
ul
cela veut unsorted list en anglais, enli
cela veut dire list item. Plus facile pour retenir - Boulette my friend.
- Bullet in english
- Plus encore.
Exemple de table avec MediaWiki:
Description | You type | You get |
only at the beginning of the line | ||
Definition list |
;Definition |
|
Git
Survival list:
cd ~/Documents/maths/synthese/
git status # Status (modified files, new files)
git st # (alias) same as "git status"
git diff # Show differences with last version
git diff --word-diff # ... idem, but show *word* differences
git add -A # Add all differences to "index"
git commit # Commit changes, enter a message
git ci # (alias) same as "git commit"
git ci -m "my message" # Commit changes, with given message "my message"
git ci -am "my message" # Add all files *AND* Commit changes, with given message
gitk # Show history of changes (graphical)
git ha # Show history of changes, summary (textual)
git ha --stat # Show history of changes, list of changed files (textual)