我試圖將數據插入B樹的葉節點(數組)。這裏是我到目前爲止的代碼:C++將數據插入(並將其移入)數組
void LeafNode::insertCorrectPosLeaf(int num)
{
for (int pos=count; pos>=0; pos--) // goes through values in leaf node
{
if (num < values[pos-1]) // if inserting num < previous value in leaf node
{continue;} // conitnue searching for correct place
else // if inserting num >= previous value in leaf node
{
values[pos] = num; // inserts in position
break;
}
}
count++;
} // insertCorrectPos()
行前值[POS] = NUM,我認爲需要編寫一些代碼,而不是轉移覆蓋它的現有數據。我試圖使用memmove,但有一個問題。其第三個參數是要複製的字節數。如果我在64位機器上移動一個int,這是否意味着我會在這裏放置一個「4」?如果我對這個完全錯誤的任何幫助將不勝感激。謝謝
如果數據是[std :: vector <>](http://en.cppreference.com/w/cpp/container/vector),[std :: deque <>](http: //en.cppreference.com/w/cpp/container/deque)或[std :: list <>](http://en.cppreference.com/w/cpp/container/list),只需使用迭代器找到正確的插槽,然後使用[insert()](http://en.cppreference.com/w/cpp/container/vector/insert)。複印等,都將爲您照顧。 – WhozCraig 2013-04-28 04:08:54
數據位於數組中。 – sbru 2013-04-28 04:10:55