本文整理汇总了C++中DLList::size方法的典型用法代码示例。如果您正苦于以下问题:C++ DLList::size方法的具体用法?C++ DLList::size怎么用?C++ DLList::size使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DLList
的用法示例。
在下文中一共展示了DLList::size方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: testPart4
void testPart4(BinarySearchTree<BSTNode1<int>, int> *tree) {
cout << "Testing Part 4..." << endl;
cout << "______________________________" << endl;
DLList<int> list = tree->getLE(10);
cout << "All items in tree less than 10: ";
for(int n = 1; n < list.size(); n++){
cout << list.get(n) << ", ";
}
cout << endl;
}
示例2: merge_unique
//- merge the input list, merge_list, with the current list, making
//- sure not to add duplicate items into the current list
void DLList::merge_unique ( DLList& merge_list, int merge_list_unique )
{
// MJP Note:
// This procedure could be much more efficient if sorted lists
// are used. However, I need this procedure at this time to merge
// DLLists that already exist. These were not created as sorted
// lists (SDLLists) and it would be painful to convert them to
// SDLLists. It would be a lot easier if one could simply sort
// a DLList based on the numeric values of its items.
// Save the current index of the merge_list
int current_index = merge_list.index;
int old_size = size();
int i, j, check_index;
void* new_item = NULL;
for (i = 0; i < merge_list.size(); i++)
{
// Get the item from the merge_list and insert it into "this"
// list if it doesn't already exist there.
new_item = merge_list.get_item_and_step();
check_index = merge_list_unique ? old_size : size();
for ( j = 0; j < check_index; j++ )
{
if ( listArray[j] == new_item )
{
check_index = -1;
break;
}
}
if ( check_index != -1 )
append_link(new_item);
}
// Restore the original index of the merge_list
merge_list.index = current_index;
}
示例3: fetchPage
void LRUCache::fetchPage(int pageNumber) {
/* find the page in the map */
unordered_map< int, Node* >::const_iterator it = directAccess.find(pageNumber);
/* if the page is found in the map */
if (it != directAccess.end()) {
/* move the page on to the head of the doubly list */
dlist.moveToHead( (Node*)it->second);
}
else {
/* if size of list is full */
if (dlist.size() == cacheSize-1)
dlist.removeTail();
/* add the node to the head of doubly list */
Node* node = dlist.addNode(pageNumber);
/* add the node in the map */
directAccess.insert(pair< int, Node* >(pageNumber,node));
}
dlist.print();
}
示例4: main
int main(){
DLList<int> leven;
for(int i = 0; i<30; i++){
leven.add(i);
}
DLList<int> lodd = leven.deal();
for(int i =0; i<leven.size(); i++){
cout <<"entry "<< i << " of leven " << leven.get(i)<< endl;
}
for(int i =0; i<lodd.size(); i++){
cout <<"entry "<< i << " of lodd " << lodd.get(i)<< endl;
}
DLList<int> lr;
for(int i = 0; i<20; i++){
lr.add(i);
}
for(int i =0; i<lr.size(); i++){
cout <<"entry before rotate "<< i << " of lr " << lr.get(i)<< endl;
}
lr.Rotate(5);
for(int i =0; i<lr.size(); i++){
cout <<"entry after rotate "<< i << " of lr " << lr.get(i)<< endl;
}
DLList<int> l1;
DLList<int> l2;
l1.add(1);
l1.add(2);
l1.add(3);
l1.add(4);
l2.add(5);
l2.add(6);
l2.add(7);
l2.add(8);
cout<<"before absorb" << endl;
for(int i =0; i<l1.size(); i++){
cout <<"entry of l1 "<< i << " of l1 " << l1.get(i)<< endl;
}
for(int i =0; i<l2.size(); i++){
cout <<"entry of l2 "<< i << " of l2 " << l2.get(i) <<endl;
}
l1.Absorb(l2);
cout<<"after absorb" << endl;
for(int i =0; i<l1.size(); i++){
cout <<"entry of l1 "<< i << " of l1 " << l1.get(i)<< endl;
}
for(int i =0; i<l2.size(); i++){
cout <<"entry of l2 "<< i << " of l2 " << l2.get(i) <<endl;
}
DLList<int> l;
l.add(5);
l.add(5);
l.add(5);
l.add(5);
cout << "True " << l.IsPalindrome()<< endl;
l.add(6);
cout << "Now False " << l.IsPalindrome()<< endl;
}