Quelle est la solution? Comment concevoir un algorithme simple et facile à comprendre

Quelle est la solution? Comment concevoir un algorithme simple et facile à comprendre

L’algorithme est un terme de base pour ceux qui veulent entrer dans le monde de la programmation. Alors qu’est-ce qu’un algorithme, comment concevoir un algorithme simple ? Consultez l’article ci-dessous!

Prise en charge simplifiée des codes

Quelle est la solution?

I. Quel est l’algorithme ?

1. Notions

Algorithme (également connu sous le nom d’algorithme – l’anglais est Algorithmes) est un ensemble fini d’instructions à exécuter dans un certain ordre pour obtenir le résultat souhaité.

Bref, algorithme Être ensemble d’étapes, d’opérations pour résoudre un problème quoi.

Un algorithme est un ensemble d'opérations permettant de résoudre un problème

Un algorithme est un ensemble d’opérations permettant de résoudre un problème

En supposant que vous ayez un problème à résoudre qui consiste à transformer du riz en riz à manger (en d’autres termes, faire cuire du riz), vous devrez effectuer les étapes suivantes :

  • Prenez le riz – lavez le riz – mesurez l’eau – mettez dans la casserole – couvrez le couvercle – branchez l’alimentation – allumez le bouton – attendez que le riz cuise.

Algorithme Être indépendance avec les langages de programmation, c’est-à-dire qu’un algorithme peut être implémenté dans de nombreux langages de programmation différents.

2. Caractéristiques de l’algorithme

Toutes les procédures ne sont pas appelées algorithmes. Un algorithme doit avoir les caractéristiques suivantes :

  • Déterminabilité : Les algorithmes doivent être clairs et sans ambiguïté. Chaque étape (ou étape) doit être claire et n’avoir qu’un but précis.
  • Données d’entrée définies : Un algorithme doit avoir 0 ou plusieurs données d’entrée spécifiées.
  • Résultat de sortie : Un algorithme doit avoir une ou plusieurs sorties spécifiées et doit être associé au type de sortie souhaité.
  • Arrêter le calcul : Les algorithmes doivent se terminer après un nombre fini d’étapes.

L'algorithme s'arrête après un certain nombre d'étapes

L’algorithme s’arrête après un certain nombre d’étapes

  • Efficacité: Un algorithme doit être exécutable avec les ressources disponibles, c’est-à-dire capable de résoudre efficacement le problème dans les conditions de temps et de ressources données.
  • Popularité: Un algorithme est universel s’il peut résoudre une classe de problèmes similaires.
  • Indépendance: Un algorithme doit avoir des instructions indépendantes de tout code de programmation.

3. L’importance des algorithmes

Les structures de données et les algorithmes sont très importants dans la programmation, pas seulement Java, PHP, Python… tous les autres langages de programmation ont besoin de structures de données et d’algorithmes.

Changer de langage de programmation n’est pas trop difficile. Ce qui vous détermine et vous suivra, ce sont les structures de données et les algorithmes. Posséder un état d’esprit algorithmique vous aidera à bien accomplir les tâches de programmation.

II. Comment concevoir des algorithmes

1. Langue écrite

La conception d’algorithmes en langage écrit est Liste séquentielle des étapes en langage naturel pour représenter l’algorithme.

Avantage:

Simple, aucune connaissance de la représentation (pseudocode, organigramme,…)

Défaut:

  • Verbeux, non structuré.
  • Parfois, il est difficile de comprendre et de ne pas représenter l’algorithme.

Par exemple: Utilisez le langage écrit pour trouver les 3 plus grands nombres dans a, b, c

  • Étape 1 : Attribuez max = a.
  • Étape 2 : Si b > max, attribuez max = b.
  • Étape 3 : Si c > max, alors max est c.

2. Organigramme

Les organigrammes comprennent :

  • Point de départ et point d’arrivée.
  • Opérations d’import/export de données.
  • Opération de manutention.
  • Contrôle de branche.
  • Ligne de progression.
  • Note.
  • Symboles reliant la même page ou à une autre page.

Organigramme

Organigramme

Avantage:

Intuitif, facile à visualiser.

Défaut:

lourd si le problème est trop complexe.

3. Pseudocode

Le langage du pseudocode est assez similaire à un langage de programmation. Il utilise souvent une structure standardisée, telle que Pascal, C. Il utilise également des symboles mathématiques, des variables et des fonctions.

Un pseudo-code

Un pseudo-code

Avantage:

Pas aussi lourd qu’un organigramme en blocs

Défaut:

Pas aussi intuitif qu’un organigramme en blocs.

4. Langage de programmation

  • Utilisation de langages informatiques (C, Pascal, …) pour décrire des algorithmes, des structures de données en instructions.
  • Utilisez le raffinement étape par étape pour convertir le problème en code de programme spécifique.
  • Les compétences en programmation nécessitent des études et de la pratique.

Ardeur

Écrivez “Hello world” en langage Java

III. Analyse d’algorithme (Description + image)

1. Pourquoi est-il nécessaire d’analyser l’algorithme ?

Lors de la résolution d’un problème, nous pouvons avoir plusieurs algorithmes différents, le problème est d’évaluer ces algorithmes pour choisir le meilleur.

2. Analyse théorique

Cela peut être considéré comme une analyse basée uniquement sur la théorie. L’efficacité de l’algorithme est évaluée en supposant que tous les autres facteurs (par exemple la vitesse du processeur, …) sont constant et n’affecte pas l’implémentation de l’algorithme.

3. Analyse asymptotique :

L’analyse de cet algorithme est effectuée après qu’il a été effectué sur un certain langage de programmation.

Après avoir exécuté et testé les paramètres associés, l’efficacité de l’algorithme est basée sur des paramètres tels que le temps d’exécution, le temps d’exécution, la quantité de mémoire nécessaire, …

IV. Complexité de l’algorithme

1. Quelle est la complexité de l’algorithme ?

La complexité de l’algorithme est un estimateur (éventuellement imprécis) nombre de calculs que l’algorithme doit exécuter (dont il est facile de déduire temps d’exécution de l’algorithme) pour le jeu de données d’entrée (Saisir) a une taille n.

Où n peut être le nombre d’éléments du tableau dans le cas d’un tri ou d’une recherche, ou il peut s’agir de l’amplitude du nombre dans le problème de la vérification des nombres premiers, etc.

Supposons que X est un algorithme et n est la taille des données d’entrée. Le temps et la quantité de mémoire utilisée par l’algorithme X sont les deux principaux facteurs qui déterminent l’efficacité de l’algorithme X :

  • Facteur temps : Le temps est évalué en calculant le nombre d’opérations clés (telles que les comparaisons dans les algorithmes de tri).

Comparaisons dans les algorithmes de tri

Comparaisons dans les algorithmes de tri

  • Facteur de mémoire : La quantité de mémoire est évaluée en calculant la quantité maximale de mémoire que l’algorithme doit utiliser.

La complexité d’un algorithme (une fonction f(n)) fournit la relation entre durée de fonctionnement et/ou quantité de mémoire doit être utilisé par l’algorithme.

2. Complexité spatiale dans l’analyse d’algorithmes

Le facteur de mémoire d’un algorithme représente la quantité de mémoire qu’un algorithme doit utiliser au cours de sa vie.

Quantité de mémoire (soi-disant appelé S(P)) qu’un algorithme doit utiliser est la somme des deux composants suivants :

  • Partie fixe (soi-disant appelé VIEUX) est la quantité de mémoire nécessaire pour stocker certaines données et variables (ceci est indépendant de la taille du problème). Par exemple, variables simples et constantes, etc.
  • Partie transformation (soi-disant appelé PS(I)) est la quantité de mémoire requise par les variables, dont la taille dépend de la taille du problème. Par exemple : allocation mémoire dynamique, allocation mémoire récursive, etc.

D’en haut, nous aurons S(P) = C + SP(I). Vous suivez l’exemple simple suivant :

d'abord

Ici, nous avons trois variables A, B et C et une constante. Donc: S(P) = 1+3.

Maintenant, la quantité de mémoire dépendra des types de données des variables et constantes données et sera égale au produit de la somme ci-dessus avec la mémoire pour le type de données respectif.

3. Complexité temporelle dans l’analyse d’algorithmes

Le facteur temps d’un algorithme représente le temps d’exécution nécessaire du début à la fin d’un algorithme.

Le temps de requête peut être représenté par une fonction T(n)là-dedans T(n) peut être évalué comme le nombre d’étapes.

Par exemple, l’addition de deux entiers de n bits prendra n étapes. Par conséquent, le temps de calcul total sera T(n) = c*n

Où c est le temps nécessaire pour effectuer l’addition de deux bits. Ici, on considère la fonction T(n) augmente linéairement à mesure que la taille des données d’entrée augmente.

Ci-dessus, le concept de l’algorithme et comment concevoir un algorithme simple et facile à comprendre. J’espère que cet article vous aidera. N’oubliez pas de partager l’article si vous le trouvez utile !

voir plus contenu Quelle est la solution? Comment concevoir un algorithme simple et facile à comprendre

Sont issus Wikipedia

Vous S’il vous plaît explorer plus détails du contenu à propos Quelle est la solution? Comment concevoir un algorithme simple et facile à comprendre

référence de Page Wikipedia.


Des postes: Quelle est la solution? Comment concevoir un algorithme simple et facile à comprendre


Licence: santaniegos.com
Quelle est la solution? Comment concevoir un algorithme simple et facile à comprendre

santaniegos.com

Related Posts

1684526989 Top 10 des reseaux sociaux pour mettre a jour les

Top 10 des réseaux sociaux pour mettre à jour les tendances populaires, les actualités et les divertissements 2020

Top 10 des réseaux sociaux pour mettre à jour les tendances populaires, les actualités et les divertissements 2020 Les réseaux sociaux vous aident à vous connecter aux…

Comparer les details Imprimante Imprimante Brother MFC L2701DW wifi avec HP

Comparer les détails Imprimante Imprimante Brother MFC-L2701DW wifi avec HP LaserJet MFP M236sdw (9YG09A) Imprimante laser noir et blanc

Comparer les détails Imprimante Imprimante Brother MFC-L2701DW wifi avec HP LaserJet MFP M236sdw (9YG09A) Imprimante laser noir et blanc Comparer les détails Imprimante Imprimante Brother MFC-L2701DW wifi…

1684517561 Instructions pour fabriquer un support de telephone extremement simple auquel

Instructions pour fabriquer un support de téléphone extrêmement simple auquel vous ne vous attendiez pas

Instructions pour fabriquer un support de téléphone extrêmement simple auquel vous ne vous attendiez pas Patientez s’il-vous-plait… Les téléphones portables sont…

1684515573 Instructions sur la facon de sinscrire a la vaccination a

Instructions sur la façon de s’inscrire à la vaccination à Hanoï directement par téléphone

Instructions sur la façon de s’inscrire à la vaccination à Hanoï directement par téléphone Patientez s’il-vous-plait… La campagne de vaccination contre…

1684513679 2 facons de trouver un amoureux sur Zalo pour vous

2 façons de trouver un amoureux sur Zalo pour vous aider à vous sortir du pétrin dès maintenant

2 façons de trouver un amoureux sur Zalo pour vous aider à vous sortir du pétrin dès maintenant Patientez s’il-vous-plait… Chaque…

1684509944 Comment telecharger lapplication pour lire des bandes dessinees et regarder

Comment télécharger l’application pour lire des bandes dessinées et regarder des dessins animés sur les smartphones

Comment télécharger l’application pour lire des bandes dessinées et regarder des dessins animés sur les smartphones Patientez s’il-vous-plait… Chacun de nous…

This page contains geo-tags