请考虑一个初始为空的大小为M的哈希表,并且哈希函数h(x)= x modM。在最坏的情况下,如果分开将n个键插入表中,时间复杂度(用Big-Oh表示)是多少?链接用于解决冲突(无需重新哈希)?假设表的每个条目(存储桶)都存储一个无序的链表。将新元素添加到无序列表时,此类元素会插入列表的开头。
答案 0 :(得分:0)
在冲突的不存在中,将键插入哈希表/映射中的操作是recyclerView.addOnItemTouchListener(new RecyclerTouchListener(getApplicationContext(), recyclerView, new RecyclerTouchListener.ClickListener() {
@Override
public void onClick(View view, int position) {
List list= aList.get(position);
//Toast.makeText(getApplicationContext(), movie.getTitle() + " is selected!", Toast.LENGTH_SHORT).show();
action(list.getId());
}
@Override
public void onLongClick(View view, int position) {
}
}));
,因为查找存储桶是固定时间的操作。假设使用链接列表和来解决冲突,并且将新元素插入列表的开头,则我不希望这在冲突的情况下有所变化。这样做的原因是,将新元素添加到链接列表的头部也基本上O(1)
。因此,在这些假设下插入也应该是O(1)
,因此插入O(1)
键应该是n
。