Maison > développement back-end > C++ > le corps du texte

En langage C, quels sont les éléments du tableau qui apparaissent plusieurs fois ?

WBOY
Libérer: 2023-09-05 09:05:10
avant
1350 Les gens l'ont consulté

En langage C, quels sont les éléments du tableau qui apparaissent plusieurs fois ?

Array est un conteneur qui contient des éléments du même type de données, et la longueur doit être définie à l'avance. Les éléments d'un tableau peuvent apparaître dans n'importe quel ordre et n'importe quel nombre de fois. Ainsi, dans ce programme, nous retrouverons les éléments qui apparaissent plusieurs fois dans le tableau.

Description du problème - On nous a donné un tableau arr[], nous devons trouver les éléments récurrents dans le tableau et les imprimer.

Prenons un exemple pour mieux comprendre.

Exemple :

Input: arr[] = {5, 11, 11, 2, 1, 4, 2}
Output: 11 2
Copier après la connexion

Explication

Nous avons un tableau arr contenant quelques éléments, nous comparons d'abord l'élément suivant dans une fonction répétitive. La fonction de répétition est utilisée pour rechercher des éléments en double dans un tableau. Dans la fonction répétitive, nous utilisons une boucle pour trouver les éléments répétitifs dans le tableau donné. Nous utiliserons la condition if else pour vérifier le nombre d'éléments du tableau, si l'élément du tableau apparaît une fois, le nombre sera de 1 et s'il apparaît plusieurs fois, le nombre sera incrémenté en conséquence. Si le compte est supérieur à 1, l'élément sera imprimé à l'écran. La traduction chinoise de

Algorithme

Input : arr[], n the length of array.
Step 1 : For i -> 0 to n, Follow step 2,
Step 2 : For each element of the array. Do :
   Step 2.1 : For j -> i to n repeat step 2.2 - 2.3.
   Step 2.2 : if (arr[i] == arr[j]) -> print arr[i]
   Step 2.3 : else {// do nothing}
Copier après la connexion

Exemple

est :

Exemple

#include <stdio.h>
int main() {
   int arr[] = {21, 87, 212, 109, 41, 21};
   int n=7;
   printf("The repeat elements of the array are : ");
   int *count = (int *)calloc(sizeof(int), (n - 2));
   int i;
   for (i = 0; i < n; i++) {
      if (count[arr[i]] == 1)
         printf(" %d ", arr[i]);
      else
         count[arr[i]]++;
   }
   return 0;
}
Copier après la connexion

Sortie

The repeat elements of the array are : 21
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal