Anglais | 简体中文
Algorithmes et structures de données
Il s'agit d'une collection d' algorithmes, de structures de données et de questions d'entretien avec des solutions. Ce référentiel contient mes solutions aux problèmes algorithmiques courants et à l'implémentation de structures de données en Java. J'ai créé ce référentiel pour en savoir plus sur les algorithmes. J'ajoute des solutions en permanence.
Des algorithmes, des structures de données et plus de 300 problèmes et solutions sont fournis jusqu'à présent.
Questions
Voici les questions divisées par niveau de difficulté :
- Questions et réponses faciles
- Questions et réponses moyennes
- Questions et réponses difficiles
Problèmes :
Tableaux
- Faire pivoter le tableau
- Contient un doublon
- Trouver l'élément de pointe
- Sous-tableau maximum
- Kième plus grand élément d'un tableau
- Rechercher tous les doublons dans un tableau
- Sous-séquence croissante la plus longue
- Rotation de l'image, matrice
- Mélanger un tableau
- Rechercher Min dans un tableau pivoté
- Rechercher dans un tableau pivoté
Liste liée
- Implémentation de listes à chaînage unique
- Implémentation de listes doublement chaînées
- Supprimer un nœud dans une liste liée
- Liste chaînée Palindrome
- Liste chaînée inversée
- Intersection de deux listes liées
- Cycle de liste chaînée
- Supprimer le nième nœud de la fin de la liste
- Fusionner la liste de tri
- Rechercher un cycle de liste chaînée
- Fusionner k listes triées
Et bien d’autres problèmes de liste chaînée
Arbre binaire
- Traversée de l'ordre au niveau de l'arbre binaire
- Somme des feuilles gauches
- Inverser l'arbre binaire
- Itérateur d'arbre de recherche binaire
- Traversée post-commande de l'arbre binaire
- Traversée de précommande d'arbre binaire
- Aplatir l'arbre binaire en liste chaînée
- Arbre symétrique
- Traversée de l'ordre de l'arbre binaire
- Même arbre
- Profondeur maximale de l'arbre binaire
- Arbre binaire équilibré
- Profondeur minimale de l'arbre binaire
- Liste triée vers arbre de recherche binaire équilibré
- Valider l'arborescence de recherche binaire
- Liste triée vers BST équilibré
- Kième plus petit élément dans un BST
- Traversée de l'ordre de niveau en zigzag de l'arbre binaire
- Supprimer le nœud dans un BST
- Ancêtre commun le plus bas de la BST
- Vue latérale gauche de l'arbre binaire
- Vue du côté droit de l'arbre binaire
- Mode en BST
- Somme des sous-arbres les plus fréquents
- Trouver le plus grand élément de chaque ligne
- Sérialiser et désérialiser BT
Et bien d'autres problèmes d'arbres
Mathématiques
- Rupture entière
- Bits inversés
- Numéro palindrome
- Math.pow
- Problème de cruche et d'eau
- Tamis d'Ératosthène
- La primalité de Fermat
- Évaluer la notation polonaise inversée
Pile et file d'attente
- Pile minimale
- File d'attente minimale
- Implémenter la pile à l'aide de la file d'attente
- Implémenter la file d'attente à l'aide de Stack
- Trier la pile
Programmation dynamique
- Numéros de Fibonacci
- Coupure de mot
- Somme du sous-ensemble
- 0/1 Problème de sac à dos
- Palindrome le plus court (KMP)
- Somme carrée minimale
- Transformation de poids maximum d'une chaîne
- Changement de pièce
Divers
- Union trouver
- Permutations
- Sous-ensembles
Algorithmes
Tri et recherche
- Tri à bulles
- Tri par insertion
- Tri de sélection
- Tri par comptage
- Recherche binaire, limites inférieures et supérieures
- Fusionner le tri
- Tri rapide
Graphiques
- Recherche en largeur d'abord (BFS)
- Recherche en profondeur d'abord (DFS)
- Arbre couvrant minimum de Prim (MST)
- Arbre couvrant minimum (MST) de KrusKal
- Tri topologique
- Dijsktra du chemin le plus court
- Chemin le plus court Bellman-Ford
- A* Recherche de chemin heuristique
- Le graphique est-il biparti
- Le graphique est-il connecté
- Détection de cycles
- Détection de pont graphique non orienté
Chaîne
- Recherche de sous-séquence Rabin Karp
- Note de rançon
- Chaîne inversée
- Préfixe commun le plus long
- Est-ce qu'Anagramme
- Aiguille et botte de foin
- Coupure de mot
- Méta-chaînes
Structure des données :
Arbres
- Arbre de recherche binaire (récursif)
- Arbre de recherche binaire (itératif)
- Arbre AVL
- Trie (Arbre de préfixes)
- Arbre de tableau haché
- Cache LRU
Contribuer
Avez-vous trouvé un bug ? Y a-t-il un moyen de faire mieux ? N'hésitez pas à en faire la demande. :)