2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Page d'accueil de l'auteur: Zhi Guyun sort de Xiu
La complexité temporelle de l'insertion d'un élément dans un tableau est de ().
A.O(1)
B. O(n)
C.O(log n)
D.O(n^2)
Dans le tri par tas, la complexité temporelle de la construction d'un tas maximum est ().
A. Sur(n)
B. O(n log n)
C.O(log n)
D.O(n^2)
Un arbre rouge-noir est un type de ().
A. Arbre binaire complet
B. Arbre binaire équilibré
C. Min-tas
D. Tas maximum
Laquelle des affirmations suivantes concernant les tables de hachage est incorrecte ().
A. La complexité du temps de recherche de la table de hachage est O(1)
B. La complexité du temps d'insertion de la table de hachage est O(1)
C. Les tables de hachage peuvent résoudre les conflits
D. La complexité du temps de recherche de la table de hachage doit être O(1)
Dans le parcours graphique, la complexité temporelle de la recherche en profondeur d'abord (DFS) et de la recherche en largeur d'abord (BFS) est respectivement ().
A. O(V + E) et O(V)
B. O (V ^ 2) et O (V)
C. O(V + E) et O(V + E)
D.O(V) et O(V^2)
La complexité temporelle de l’inversion d’une liste chaînée unidirectionnelle est ().
A.O(1)
B. O(n)
C.O(log n)
D.O(n^2)
Dans un arbre de recherche binaire, la complexité temporelle la plus défavorable de la suppression d'un nœud est ().
A.O(1)
B. O(n)
C.O(log n)
D. O(n log n)
Lequel des algorithmes de tri suivants a une complexité temporelle moyenne de O(n log n)().
A. Tri à bulles
B. Tri rapide
C. Tri par insertion
D. Tri par sélection
Dans un arbre binaire, le degré d'un nœud est ().
A. Le nombre de nœuds enfants de ce nœud
B. La profondeur du nœud
C. La hauteur du nœud
D. Le niveau du nœud
La principale différence entre B-tree et B+-tree est ().
A. Tous les nœuds de l’arbre B stockent des données, tandis que seuls les nœuds feuilles de l’arbre B+ stockent des données.
B. L'arbre B est plus équilibré que l'arbre B+
C. Les opérations d'insertion et de suppression de B-tree sont plus simples
D. L'efficacité de la recherche de l'arbre B+ est inférieure
Veuillez implémenter une fonction pour déterminer si une liste chaînée est une liste chaînée palindrome.
def is_palindrome(head):
# 请在这里编写代码
Veuillez écrire du code pour implémenter l'opération d'insertion dans l'arborescence de recherche binaire.
class TreeNode:
def __init__(self, key):
self.left = None
self.right = None
self.val = key
def insert(root, key):
# 请在这里编写代码
Étant donné un graphique, représenté par une matrice de contiguïté, implémentez la recherche en largeur d'abord (BFS).
def bfs(graph, start):
# 请在这里编写代码
propriétés de l'arbre rouge noir:
Comment les arbres rouge-noir maintiennent l'équilibre:
La différence entre un tableau dynamique et une liste chaînée:
Le principe de la table de hachage:
Déterminez si la liste chaînée est une liste chaînée palindrome :
class ListNode:
def __init__(self, x):
self.val = x
self.next = None
def is_palindrome(head):
# 使用快慢指针找到链表中点
slow = fast = head
while fast and fast.next:
slow = slow.next
fast = fast.next.next
# 反转后半部分链表
prev = None
while slow:
temp = slow.next
slow.next = prev
prev = slow
slow = temp
# 比较前半部分和后半部分
left, right = head, prev
while right:
if left.val != right.val:
return False
left = left.next
right = right.next
return True
Opération d'insertion dans l'arbre de recherche binaire :
class TreeNode:
def __init__(self, key):
self.left = None
self.right = None
self.val = key
def insert(root, key):
if root is None:
return TreeNode(key)
if key < root.val:
root.left = insert(root.left, key)
else:
root.right = insert(root.right, key)
return root
Recherche en largeur d'abord (BFS) :
from collections import deque
def bfs(graph, start):
visited = [False] * len(graph)
queue = deque([start])
visited[start] = True
result = []
while queue: