La fondation, l'algorithme LeetCode Sujets brosse 9, la valeur maximale du problème de tableau

L'algorithme a été essai très embrouillée comment écrire. Enfin, pense que c'est le niveau le plus simple a commencé à écrire, obtenir un certain début des poids lourds de ce que l'intelligence artificielle, les algorithmes d'apprentissage machine, mais aussi un grand nombre d'optimisation mathématique et de connaissances, le blanc sont estimés être très déprimé, bien sûr, Je ne viens pas toujours droit.

Je prévois de donner des solutions à tous les problèmes dans les deux langues un langage statique, un langage dynamique.

J'ai choisi le langage C et Python, envisageais Java, mais l'espace est limité, les amis intéressés par vous-même.

LeetCode 852. demander un index de l'élément de maximum de la matrice, un pic (pic N dans une matrice Mountain)

Description du problème:

Les deux conditions suivantes sont remplies est appelé le « tableau de pointe »:

  • a.length > = 3;
  • Si 0 <  Je <  A.length - 1 puis A <  A <  ... A   <  A   >  A   >  ... >  A  Fondée;

Compte tenu maintenant un réseau de pointe, la valeur de i est déterminée.

Remarque:

  • 3 < = a.length < = 10000
  • 0 < = A   < = 10 ^ 6
  • A est une matrice de pic
  • exemple:

    langage C:

    Ceci est une question très simple, en fait, à la recherche de l'indice de tableau maximale. On traverse le tableau principal peut être obtenu. Ne vous laissez pas berner par ces conditions, les notes de sujet. Parfois, vous ignorez quelques-unes des conditions, debout dans une perspective plus large à penser, le problème est probablement pas si compliqué que ça.

    la complexité du temps de O (n).

    python langage:

    Nous pensons naturellement d'un retour A.index (max (A)) sur elle. Bien que la simple écriture, mais l'efficacité est pire, penser, max (A) est en fait un besoin de traverser des A. A.index () traversant aussi un A, la traverse est sensiblement égale à deux fois A.

    Je suis le libellé ci-dessus est d'atteindre le langage C, de sorte que seule la Une fois traversal.

    Je regardais le code soumis par d'autres, plus complexes, je pense que l'utilisation de Python est d'améliorer l'efficacité du codage. Pour ce petit problème, mettre la main sur deux douzaines de lignes de code, il semble utile, mais aussi pour atteindre les objectifs précités C avec neuf lignes.

    En C pour résoudre un problème, nous devons montrer au fond que la performance est une considération importante, si le temps de résoudre un problème avec l'exigence de python signifie souvent que les performances ne sont pas le plus important.

    Ainsi, lors de l'utilisation du développement de python, nous ne nous attendons pas toujours de serrer la performance, à moins que la réalisation de simples conduit à la performance insatisfaisante de et nous avons pas trop mal pour le changement peut être résolu, sinon, je vous recommande encore le code python pour écrire autant que possible ces simples et directes.

    Noël ne sait pas où montrer l'affection? L'atmosphère plus punch ici!
    Précédent
    Commission nationale de contrôle des stupéfiants de chanvre industriel strict examen et l'approbation! Stocks était plus « Salut », le plus Ushimata trois mois ont bondi de 378%!
    Prochain
    Multi-plateforme la plus forte épreuve de force Mate20 Pro et iPhone XS Max ce que la faible forte?
    Siècle banquet hommes Cent Jours de célébrer son fils, il avait une réplique de la violence domestique heureux qualifié Sammi Cheng?
    La fondation, le titre algorithme LeetCode brosse Jour 8, donne le nombre d'auto-division
    Le haut profil grand espace + 7 + SUV 1.5T + 6AT, vous avez besoin seulement 100000?
    A part le premier président de cette année! Divorce 8 milliards de valeur approchait, il a appelé l'année ESOP a gagné 260000
    Sony Xperia oreille Duo Expérience: porté sur le secrétaire particulier de l'oreille
    Débuts de 18 ans et enfin par le « grand gars » gagner, elle sera le prochain noyau Gilbert TVB faire?
    Cercles | vous avez besoin de nouvelles façons de surmonter la curiosité de l'apprentissage par renforcement « pour développer la maladie. »
    Maintenant acheter SUV? Il jouera ont commencé lorgne le chariot
    6T comment commencer à expérimenter un plus faits saillants autorité d'évaluation des médias
    Mise à jour Institut Baidu a accueilli aujourd'hui neuf scientifiques de classe mondiale
    Encore une fois ECRU rafraîchir vos valeurs! 500 $ chemise comment allez-vous avec?