第20823题 单选
带头指针head的双链表查找函数的时间复杂度是多少?

小杨采用如下双链表结构保存他喜欢的歌曲列表:

struct dl_node {
  string song;
  dl_node* next;
  dl_node* prev;
};

小杨想在头指针为 head 的双链表中查找他喜欢的某首歌曲,采用如下查询函数,该操作的时间复杂度为( )。

dl_node* search(dl_node* head, string my_song) {
  dl_node* temp = head;
  while (temp != nullptr) {
    if (temp->song == my_song)
      return temp;
    temp = temp->next;
  }
  return nullptr;
}
A

O(1)

B

O(n)

C

O(logn)

D

O(n²)

提交0次 正确率0.00%
答案解析