algorithme de LeetCode basé sur 96 questions: l'ensemble ordonnée dans un arbre binaire équilibré

La technologie pour améliorer est un processus graduel, donc je parle des questions leetcode algorithme de niveau le plus simple a commencé à écrire, puis à la difficulté intermédiaire, a finalement terminé toute la difficulté difficile.

Actuellement, je choisi le langage C, Python et Java comme langage de mise en uvre, parce que ces trois langues est tout à fait typique. En raison de l'espace et de l'énergie limitée pour réaliser d'autres langues amis qui sont intéressés, s'il vous plaît essayer vous-même.

principale difficulté à parler en même temps, je vais ajouter d'autres choses, je pourrais parler à la pile de protocole du système d'exploitation de grandes quantités de données distribués à partir du cadre, et de parler de gros volumes de données à l'intelligence artificielle, ... ....

Si vous avez des questions ou des commentaires après l'article lettre privée à moi .

Je continuerai à le partager, votre attention s'il vous plaît.

LeetCode 108. Le tableau ordonné dans un arbre binaire équilibré (Convertissez Sorted Array pour Binary Rechercher Arbre)

Description du problème:

Un tableau ordonné, conformément à l'ordre croissant, est converti en un arbre de recherche binaire très équilibrée.

Dans ce problème, un arbre binaire très équilibré est un arbre binaire fait référence au sous-arbre gauche et à droite de chaque nud est la différence de hauteur entre la valeur absolue de ne pas plus de 1.

exemple:

langage C:

Convertir ordonné tableau dans un arbre binaire équilibré, ce qui signifie que l'arbre binaire, le nombre de nuds sur la gauche et à droite de la différence entre le nombre de nuds ne peut pas être supérieur à 1, sinon possible Il est déséquilibré. ( Je dis qu'il est possible, le nombre de nuds dans beaucoup de temps, cette conclusion n'est pas établie, mais en tout cas remplir cette condition, il doit être équilibré )

Ensuite, la gamme la plus significative noeud intermédiaire « m » comme le noeud racine de l'arbre binaire devrait être « T », les éléments gauche et droit sont des noeuds d'un arbre binaire m « T » de la gauche et le sous-arbre droit du sous-arbres.

De même, pour l'élément « m » gauche ou à droite, ont encore besoin de sélectionner un élément de centrage de taille « T » dans la racine sous-sous-arbre gauche ou à droite de l'arbre, ....... Donc, cela continue, par la suite, il sera en mesure de former un nouvel arbre binaire équilibré.

Dans la mise en uvre de C, nous utilisons un tableau de pointeurs d'accès de contrôle très pratique.

Il convient de rappeler que lorsque vous modifiez le regard à travers le tableau de pointeurs, attention à la longueur de recherche doivent également être mis à jour.

Code est la suivante:

la mise en uvre de python de la langue:

python de mise en uvre de base et C est le même, sauf pour le python, les tranches plutôt que par la plage de recherche tableau de pointeurs de commande.

Code est la suivante:

Java implémentation du langage:

Java aucun pointeur C, ni python comme l'outil de coupe, donc nous définissons une fonction pour faire cette chose, la fonction d'inclure deux paramètres entiers comme le début et la fin matrice de recherche d'index.

D'autres parties sont fondamentalement les mêmes et atteindre le langage C.

Code est la suivante:

Yang Weidong: TV et web drame chose du passé, est maintenant l'ère de l'épisode super!
Précédent
2017 Tokyo Motor Show: Toyota Crown nouvelle voiture concept publié
Prochain
Comme mystérieux univers de rêve, la version X23 vivo de vente chaude Astral
Vous voulez un simple et efficace mais aussi d'économiser le montant? Essayez-le sur le maquillage Dafa doigt!
Gao Wen, Zhao Qinping, YU Dapeng, Wu Jianping, CENTRAL Liao Xiangke six académiciens réunis, les défis techniques de l'intelligence artificielle de la plate-forme open source ouverte co-mots
Vif | Le Conseil d'Etat a mis en place la première « China Brand Day » pour l'industrie automobile comment saisir l'occasion d'entrer dans le changement qualitatif de?
algorithme LeetCode basé sur 95 questions: la résolution de problèmes par résumé la loi
puce de bande de base MediaTek 5G Helio M70 a annoncé son intention de libérer en 2019
groupe TVB du ridicule de fleurs a été dévoilé « l'exploration de fer », en agissant enfin se montrer digne de tenir!
Laver manteau rétrécir le magasin a refusé de vous dédommager ne voulez pas une répétition de cette prévention de la tragédie
Nous avons étudié la « Ode à la joie 2 » 36 marque implant nouvel effet médiatique, nous avons obtenu cinq classements, les cinq « pit »
Courier | une bouche sur les gens « manger pad coussin de merde », EZZY est une sorte de temps partagé voiture de location?
Dynamic | téléphone reconnaissance faciale tête d'impression 3D est fissuré, vous osez l'utiliser?
Tse Yin a reçu le prix pour le Prix du Lifetime Achievement: entrée 50 ans, libéré leurs fonctions, ne peut se briser