"Explication exquise de l'algorithme : description du langage C" code source et projet Xcode, projet Linux
Utilisez simplement Xcode pour ouvrir MasteringAlgorithms.xcodeproj
sur Mac. Algorithms.xcodeproj
est le projet de fichier de bibliothèque d'algorithmes. Chaque exemple est un fichier d'exécution distinct.
Ligne de commande Mac ou Linux
Tout ce dont vous avez besoin est un simple environnement de compilation cc
Exécutez ensuite ./run bfs
, où bfs
est le répertoire d'exemple dans Example
.
Vous pouvez également utiliser cc
gcc
etc. gcc source/*.c Example/bfs/main.c -I ./include -o bfs && ./bfs
structure des données
liste chaînée
- liste chaînée unique
- Gestion des cadres de pages
- liste doublement chaînée
- liste chaînée circulaire
- Remplacement de page de la deuxième chance
piles et files d'attente
- empiler
- file d'attente
- gestion des événements
rassembler
- rassembler
- Couverture de la collecte
Table de hachage
- table de hachage enchaînée
- table des symboles
- Table de hachage d'adresse ouverte
Arbre
- Arbre binaire
- Parcours d'arbre binaire
- arbre de recherche binaire
Tas et file d'attente prioritaire
- tas
- file d'attente prioritaire
- Tri des colis
image
- image
- Recherche approfondie de graphiques
- Recherche de largeur de graphique
algorithme
Trier et rechercher
- tri par insertion
- Tri rapide
- liste d'annuaire
- tri par fusion
- tri par comptage
- Tri par base
- recherche binaire
- correcteur orthographique
Calcul numérique
- interpolation polynomiale
- méthode d'estimation des moindres carrés
- Résolution d'équations
Compression des données
- Opérations sur les bits
- Codage de Huffman
- Optimisation du transport réseau
- LZ77
Cryptage des données
- Algorithme DES
- bloquer le mode de cryptage
- Algorithme RSA
algorithme graphique
- arbre couvrant minimal
- chemin le plus court
- itinéraire le plus court
- problème de voyageur de commerce
algorithme géométrique
- Tester si les segments de ligne se croisent
- Calcul de coque convexe
- Longueur de l'arc sphérique
- La distance approximative entre deux points sur Terre