假设一动态集合S用一个长度为m的直接寻址表T来表示。请给出一个查找S中最大元素的过程。(算法导论第十一章11.1-1)
生活随笔
收集整理的這篇文章主要介紹了
假设一动态集合S用一个长度为m的直接寻址表T来表示。请给出一个查找S中最大元素的过程。(算法导论第十一章11.1-1)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
假設一動態集合S用一個長度為m的直接尋址表T來表示。請給出一個查找S中最大元素的過程。你所給的過程在最壞情況下的運行時間是多少。
(算法導論第十一章11.1-1)
#include "KeyNode.h" template<typename T> KeyNode<T>* direct_address_search(KeyNode<T>** array,int k) {return array[k]; } template<typename T> void direct_address_insert(KeyNode<T>**array,KeyNode<T>* value) {array[value->key] = value; } template<typename T> void direct_address_delete(KeyNode<T>**array,KeyNode<T>* value) {array[value->key] = nullptr; } template<typename T> KeyNode<T>* find_maximum(KeyNode<T>**array,int size) {KeyNode<T>* max = nullptr;for (int i = 0; i < size; ++i) {if(array[i]!= nullptr){if(max == nullptr){max = array[i];}else if(max->value<array[i]->value){max = array[i];}}}return max; }輔助類
1??KeyNode地址
測試代碼
時間復雜度O(m)
總結
以上是生活随笔為你收集整理的假设一动态集合S用一个长度为m的直接寻址表T来表示。请给出一个查找S中最大元素的过程。(算法导论第十一章11.1-1)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 利用链表实现可合并堆(算法导论第三版思考
- 下一篇: 笔记本剪刀式键盘拆卸电脑键盘如何拆洗