Il semble que des tests de codage soient menés à l'étranger lors d'entretiens d'ingénieurs, et dans de nombreux cas, l'essentiel est de mettre en œuvre des fonctions et des classes spécifiques en fonction du thème.
Apparemment, de nombreux ingénieurs prennent des mesures sur le site appelé LetCode.
C'est un site qui forme la puissance de l'algorithme qui peut résister au test de codage effectué au début, et c'est un chemin inévitable pour ceux qui veulent faire carrière dans une entreprise de technologie à l'étranger.
Je l'ai écrit en grand, mais je n'ai pas l'intention d'avoir une telle interview pour le moment.
Cependant, en tant qu'ingénieur informatique, il serait préférable d'avoir le même niveau de puissance d'algorithme qu'une personne, alors j'aimerais résoudre le problème de manière irrégulière et écrire la méthode que je pensais à l'époque sous forme de mémo.
Je le résolve avec Python3.
Table de codes Leet commençant à zéro
Dernière fois Leet Code Day 80 à partir de zéro "703. Kth plus grand élément d'un flux"
Twitter Je le fais.
** Blog technique Commencé! !! ** ** Je pense que la technologie écrira sur LetCode, Django, Nuxt, etc. ** C'est plus rapide à mettre à jour **, merci pour votre coopération!
347. Top K Frequent Elements Le niveau de difficulté est moyen. Comme le problème précédent, il s'agit d'un problème d'utilisation de Heap.
Le problème est que vous recevez un tableau de nombres non vide. Concevez un algorithme qui renvoie les éléments les plus fréquents du tableau jusqu'au «K».
Example 1:
Input: nums = [1,1,1,2,2,3], k = 2 Output: [1,2]
Example 2:
Input: nums = [1], k = 1 Output: [1]
J'ai utilisé Counter
pour rechercher les éléments de la liste, j'ai obtenu la clé et l'ai écrite en utilisant [nlargest] de tas (https://docs.python.org/ja/3/library/heapq.html).
import heapq
import collections
class Solution:
def topKFrequent(self, nums: List[int], k: int) -> List[int]:
count = collections.Counter(nums)
key = count.get
return heapq.nlargest(k,count.keys(),key)
# Runtime: 108 ms, faster than 66.40% of Python3 online submissions for Top K Frequent Elements.
# Memory Usage: 18.2 MB, less than 79.07% of Python3 online submissions for Top K Frequent Elements.
Les arguments de nlargest
sont dans l'ordre de n, itérable, clé = Aucun
.
Alors c'est tout pour cette fois. Je vous remercie pour votre travail acharné.
Recommended Posts