
Parcours algorithmique
Description
Introduction au livre
« Pour être un bon programmeur, il faut comprendre les principes de la programmation générique. »
Pour comprendre les principes de la programmation générique, il faut comprendre l'abstraction.
Pour comprendre l'abstraction, il faut comprendre les mathématiques qui la sous-tendent. – Alexander Stepanov
Alexandre Stepanov explique
Histoires de programmation et de mathématiques
Un récit sur la programmation et les mathématiques, présenté par Stepanov, créateur de la STL grâce à l'application du concept de programmation générique, et résumé par Daniel Rose.
En examinant les principes de la programmation générique et les concepts mathématiques d'abstraction, vous apprendrez les principes de l'écriture d'un code concis et précis.
Des concepts mathématiques à la programmation générique
Explique l'algèbre abstraite et la théorie des nombres aux programmeurs ayant un esprit logique.
Il explique les problèmes que les mathématiciens ont dû résoudre au départ et montre comment traduire les solutions mathématiques en programmation générique, ce qui permet d'obtenir un code plus efficace et plus élégant.
Pour démontrer que ces principes mathématiques jouent un rôle crucial dans les applications modernes, nous montrons comment implémenter un système de cryptographie à clé publique en utilisant des principes mathématiques et la programmation générique.
Apprenez à programmer par la pensée
Acquérir les compétences de réflexion nécessaires pour écrire un code concis et fonctionnel.
Vous apprendrez à généraliser des algorithmes qui résolvent des problèmes spécifiques tout en élargissant leur utilité sans compromettre leur efficacité.
Vous acquerrez également une compréhension approfondie de la traduction du sens mathématique en programmation.
Ces observations sont précieuses quel que soit le langage de programmation ou le paradigme.
[Contenu de ce livre]
Anciens algorithmes de multiplication et améliorations
Propriétés des entiers et algorithmes de recherche des nombres premiers
Recherche du plus grand commun diviseur et abstraction
L'algèbre abstraite, un concept fondamental de la programmation générique
Les composantes de la programmation générique : axiomes, théorie et modèles
Comment appliquer les mathématiques et les algorithmes à la cryptographie
Pour comprendre les principes de la programmation générique, il faut comprendre l'abstraction.
Pour comprendre l'abstraction, il faut comprendre les mathématiques qui la sous-tendent. – Alexander Stepanov
Alexandre Stepanov explique
Histoires de programmation et de mathématiques
Un récit sur la programmation et les mathématiques, présenté par Stepanov, créateur de la STL grâce à l'application du concept de programmation générique, et résumé par Daniel Rose.
En examinant les principes de la programmation générique et les concepts mathématiques d'abstraction, vous apprendrez les principes de l'écriture d'un code concis et précis.
Des concepts mathématiques à la programmation générique
Explique l'algèbre abstraite et la théorie des nombres aux programmeurs ayant un esprit logique.
Il explique les problèmes que les mathématiciens ont dû résoudre au départ et montre comment traduire les solutions mathématiques en programmation générique, ce qui permet d'obtenir un code plus efficace et plus élégant.
Pour démontrer que ces principes mathématiques jouent un rôle crucial dans les applications modernes, nous montrons comment implémenter un système de cryptographie à clé publique en utilisant des principes mathématiques et la programmation générique.
Apprenez à programmer par la pensée
Acquérir les compétences de réflexion nécessaires pour écrire un code concis et fonctionnel.
Vous apprendrez à généraliser des algorithmes qui résolvent des problèmes spécifiques tout en élargissant leur utilité sans compromettre leur efficacité.
Vous acquerrez également une compréhension approfondie de la traduction du sens mathématique en programmation.
Ces observations sont précieuses quel que soit le langage de programmation ou le paradigme.
[Contenu de ce livre]
Anciens algorithmes de multiplication et améliorations
Propriétés des entiers et algorithmes de recherche des nombres premiers
Recherche du plus grand commun diviseur et abstraction
L'algèbre abstraite, un concept fondamental de la programmation générique
Les composantes de la programmation générique : axiomes, théorie et modèles
Comment appliquer les mathématiques et les algorithmes à la cryptographie
- Vous pouvez consulter un aperçu du contenu du livre.
Aperçu
indice
Chapitre 1 À propos de ce livre
__1.1 Programmation et mathématiques
1.2 Perspective historique
1.3 Choses à savoir à l'avance
Feuille de route __1.4
Chapitre 2 : Le premier algorithme
__2.1 Multiplication égyptienne
__2.2 Amélioration de l'algorithme
2.3 Conclusion
Chapitre 3 : La théorie des nombres dans la Grèce antique
__3.1 Propriétés géométriques des entiers
3.2 Éliminer les nombres premiers
3.3 Implémentation et optimisation du code
3.4 Nombres parfaits
__3,5 espace vide
3.6 Faiblesse fatale du concept de mesure publique
3.7 Conclusion
Chapitre 4 : L'algorithme d'Euclide
4.1 Athènes et Alexandrie
4.2 L'algorithme du plus grand commun diviseur d'Euclide
__4.3 Le millénaire sans les maths
__4.4 L'étrange histoire de l'esprit
__4.5 Algorithme du reste et du quotient
4.6 Partage de code
__4.7 Validation de l'algorithme
4.8 Conclusion
Chapitre 5 : Les débuts de la théorie moderne des nombres
__5.1 Primes de Mersenne et Primes de Fermat
5.2 Le petit théorème de Fermat
Décalage __5.3
5.4 Démonstration du petit théorème de Fermat
__5.5 Théorème d'Euler
__5.6 Applications de l'arithmétique modulaire
5.7 Conclusion
Chapitre 6 L'abstraction en mathématiques
__6.1 Armée
__6.2 Célibataire et rebelle
6.3 Quelques remarques sur l'armée
6.4 Sous-groupes et groupes cycliques
6.5 Théorème de Lagrange
6.6 Théorie et modèle
6.7 Exemples de théorie des catégories et de théorie non catégorique
__6.8 Conclusion
Chapitre 7 : Dérivation d’algorithmes génériques
7.1 Démêler les exigences de l'algorithme
__7.2 Exigences pour A
7.3 Exigences pour N
__7.4 Nouvelles exigences
__7.5 De la multiplication à l'exponentiation
7.6 Généralisation des opérations
7.7 Calcul des nombres de Fibonacci
7.8 Conclusion
Chapitre 8 Autres structures algébriques
8.1 Stevin, les polynômes et le plus grand commun diviseur
8.2 Göttingen et les mathématiciens allemands
__8.3 Noether et la naissance de l'algèbre abstraite
__8.4 échange
8.5 Multiplication matricielle et retour
8.6 Applications : Réseaux sociaux et chemins les plus courts
8.7 Domaine euclidien
8.8 Corps et autres structures algébriques
8.9 Conclusion
Chapitre 9 : Le processus de systématisation des connaissances mathématiques
__9.1 Preuve
__9.2 Premier théorème
9.3 Euclide et la méthode axiomatique
__9.4 Géométrie non euclidienne
__9.5 L'approche formaliste de Hilbert
__9.6 Peano et ses axiomes
__9.7 Comment construire des opérations arithmétiques
__9.8 Final
Chapitre 10 : Concepts de base de la programmation
10.1 Aristote et l'abstraction
__10.2 Valeurs et types
__10.3 Concept
__10.4 Itérateur
__10.5 Catégories, opérations et propriétés des itérateurs
__10.6 section
__10.7 Recherche linéaire
__10.8 Recherche binaire
__10.9 Conclusion
Chapitre 11 Algorithmes de permutation
__11.1 Permutation et compatibilité
__11.2 Échange de sections
__11,3 rotation
11.4 Comment utiliser le cercle
__11.5 Flip
__11.6 Complexité spatiale
__11.7 Algorithme adaptatif à la mémoire
__11.8 Conclusion
Chapitre 12 Extensions du PGCD
__12.1 Contraintes matérielles et algorithmes plus efficaces
12.2 Généralisation de l'algorithme de Stein
__12.3 L'identité de Beju
__12.4 PGCD étendu
12.5 Applications du PGCD
12.6 Conclusion
Chapitre 13 : Applications pratiques
13.1 Cryptographie
__13.2 Test des nombres premiers
__13.3 Test de Miller-Ravin
13.4 Fonctionnement de l'algorithme RSA
__13.5 Conclusion
Conclusion du chapitre 14
Lectures du chapitre 15
Annexe A Notation
Annexe B Techniques générales de démonstration
__B.1 La loi de la réduction à l'absurde
B.2 Induction mathématique
__B.3 Principe des tiroirs
Annexe C : Notions de base du C++
__C.1 Fonctions modèles
Concept __C.2
__C.3 Syntaxe de déclaration et constantes typées
__C.4 Objets fonctionnels
__C.5 Préconditions, postconditions et assertions
__C.6 Algorithmes et structures de données STL
__C.7 Itérateurs et intervalles
__C.8 Alias de types et fonctions de types utilisant C++11
Initialisation de listes __C.9 en C++11
__C.10 Fonctions lambda en C++11
__C.11 À propos de la directive en ligne
Annexe D Références
__1.1 Programmation et mathématiques
1.2 Perspective historique
1.3 Choses à savoir à l'avance
Feuille de route __1.4
Chapitre 2 : Le premier algorithme
__2.1 Multiplication égyptienne
__2.2 Amélioration de l'algorithme
2.3 Conclusion
Chapitre 3 : La théorie des nombres dans la Grèce antique
__3.1 Propriétés géométriques des entiers
3.2 Éliminer les nombres premiers
3.3 Implémentation et optimisation du code
3.4 Nombres parfaits
__3,5 espace vide
3.6 Faiblesse fatale du concept de mesure publique
3.7 Conclusion
Chapitre 4 : L'algorithme d'Euclide
4.1 Athènes et Alexandrie
4.2 L'algorithme du plus grand commun diviseur d'Euclide
__4.3 Le millénaire sans les maths
__4.4 L'étrange histoire de l'esprit
__4.5 Algorithme du reste et du quotient
4.6 Partage de code
__4.7 Validation de l'algorithme
4.8 Conclusion
Chapitre 5 : Les débuts de la théorie moderne des nombres
__5.1 Primes de Mersenne et Primes de Fermat
5.2 Le petit théorème de Fermat
Décalage __5.3
5.4 Démonstration du petit théorème de Fermat
__5.5 Théorème d'Euler
__5.6 Applications de l'arithmétique modulaire
5.7 Conclusion
Chapitre 6 L'abstraction en mathématiques
__6.1 Armée
__6.2 Célibataire et rebelle
6.3 Quelques remarques sur l'armée
6.4 Sous-groupes et groupes cycliques
6.5 Théorème de Lagrange
6.6 Théorie et modèle
6.7 Exemples de théorie des catégories et de théorie non catégorique
__6.8 Conclusion
Chapitre 7 : Dérivation d’algorithmes génériques
7.1 Démêler les exigences de l'algorithme
__7.2 Exigences pour A
7.3 Exigences pour N
__7.4 Nouvelles exigences
__7.5 De la multiplication à l'exponentiation
7.6 Généralisation des opérations
7.7 Calcul des nombres de Fibonacci
7.8 Conclusion
Chapitre 8 Autres structures algébriques
8.1 Stevin, les polynômes et le plus grand commun diviseur
8.2 Göttingen et les mathématiciens allemands
__8.3 Noether et la naissance de l'algèbre abstraite
__8.4 échange
8.5 Multiplication matricielle et retour
8.6 Applications : Réseaux sociaux et chemins les plus courts
8.7 Domaine euclidien
8.8 Corps et autres structures algébriques
8.9 Conclusion
Chapitre 9 : Le processus de systématisation des connaissances mathématiques
__9.1 Preuve
__9.2 Premier théorème
9.3 Euclide et la méthode axiomatique
__9.4 Géométrie non euclidienne
__9.5 L'approche formaliste de Hilbert
__9.6 Peano et ses axiomes
__9.7 Comment construire des opérations arithmétiques
__9.8 Final
Chapitre 10 : Concepts de base de la programmation
10.1 Aristote et l'abstraction
__10.2 Valeurs et types
__10.3 Concept
__10.4 Itérateur
__10.5 Catégories, opérations et propriétés des itérateurs
__10.6 section
__10.7 Recherche linéaire
__10.8 Recherche binaire
__10.9 Conclusion
Chapitre 11 Algorithmes de permutation
__11.1 Permutation et compatibilité
__11.2 Échange de sections
__11,3 rotation
11.4 Comment utiliser le cercle
__11.5 Flip
__11.6 Complexité spatiale
__11.7 Algorithme adaptatif à la mémoire
__11.8 Conclusion
Chapitre 12 Extensions du PGCD
__12.1 Contraintes matérielles et algorithmes plus efficaces
12.2 Généralisation de l'algorithme de Stein
__12.3 L'identité de Beju
__12.4 PGCD étendu
12.5 Applications du PGCD
12.6 Conclusion
Chapitre 13 : Applications pratiques
13.1 Cryptographie
__13.2 Test des nombres premiers
__13.3 Test de Miller-Ravin
13.4 Fonctionnement de l'algorithme RSA
__13.5 Conclusion
Conclusion du chapitre 14
Lectures du chapitre 15
Annexe A Notation
Annexe B Techniques générales de démonstration
__B.1 La loi de la réduction à l'absurde
B.2 Induction mathématique
__B.3 Principe des tiroirs
Annexe C : Notions de base du C++
__C.1 Fonctions modèles
Concept __C.2
__C.3 Syntaxe de déclaration et constantes typées
__C.4 Objets fonctionnels
__C.5 Préconditions, postconditions et assertions
__C.6 Algorithmes et structures de données STL
__C.7 Itérateurs et intervalles
__C.8 Alias de types et fonctions de types utilisant C++11
Initialisation de listes __C.9 en C++11
__C.10 Fonctions lambda en C++11
__C.11 À propos de la directive en ligne
Annexe D Références
Image détaillée

SPÉCIFICATIONS DES PRODUITS
- Date de publication : 30 mai 2018
Nombre de pages, poids, dimensions : 424 pages | 638 g | 152 × 225 × 30 mm
- ISBN13 : 9791160504880
Vous aimerez peut-être aussi
카테고리
Langue coréenne
Langue coréenne