// prototype of DelOddCopEven of Assignment 5 Part 1 #endif // definition of DelOddCopEven of Assignment 5 Part 1 //Algorithm should:  /*NOT destroy any of the originally even-valued node.      This means that the originally even-valued nodes should be retained as part of the resulting list.     Destroy ONLY nodes that are originally odd-valued.     Create new nodes and copy data between nodes ONLY when duplicating originally even-valued nodes.     Only ONE new node should be created for each originally even-valued node.     Creating pointer-to-node's (to provide temporary storage for node addresses) does not constitute creating new nodes or copying of items.     NOT make any temporary copies of any of the data items (using any kind of data structures including but not limited to arrays, linked lists and trees).     This means that the algorithm should largely involve the manipulation of pointers.     Function must be iterative (NOT recursive) - use only looping construct(s), without the function calling itself (directly or indirectly).     Function should not call any other functions to help in performing the task. */ bool DelOddCopEven(Node* headPtr) {          }

EBK JAVA PROGRAMMING
9th Edition
ISBN:9781337671385
Author:FARRELL
Publisher:FARRELL
Chapter9: Advanced Array Concepts
Section: Chapter Questions
Problem 19RQ
icon
Related questions
Question

#ifndef LLCP_INT_H
#define LLCP_INT_H

#include <iostream>

struct Node
{
   int data;
   Node *link;
};

bool    DelOddCopEven(Node* headPtr);
int    FindListLength(Node* headPtr);
bool   IsSortedUp(Node* headPtr);
void   InsertAsHead(Node*& headPtr, int value);
void   InsertAsTail(Node*& headPtr, int value);
void   InsertSortedUp(Node*& headPtr, int value);
bool   DelFirstTargetNode(Node*& headPtr, int target);
bool   DelNodeBefore1stMatch(Node*& headPtr, int target);
void   ShowAll(std::ostream& outs, Node* headPtr);
void   FindMinMax(Node* headPtr, int& minValue, int& maxValue);
double FindAverage(Node* headPtr);
void   ListClear(Node*& headPtr, int noMsg = 0);

// prototype of DelOddCopEven of Assignment 5 Part 1

#endif

// definition of DelOddCopEven of Assignment 5 Part 1
//Algorithm should: 
/*NOT destroy any of the originally even-valued node. 
    This means that the originally even-valued nodes should be retained as part of the resulting list.
    Destroy ONLY nodes that are originally odd-valued.
    Create new nodes and copy data between nodes ONLY when duplicating originally even-valued nodes.
    Only ONE new node should be created for each originally even-valued node.
    Creating pointer-to-node's (to provide temporary storage for node addresses) does not constitute creating new nodes or copying of items.
    NOT make any temporary copies of any of the data items (using any kind of data structures including but not limited to arrays, linked lists and trees).
    This means that the algorithm should largely involve the manipulation of pointers.
    Function must be iterative (NOT recursive) - use only looping construct(s), without the function calling itself (directly or indirectly).
    Function should not call any other functions to help in performing the task.
*/
bool DelOddCopEven(Node* headPtr)
{
    
    }

passed test on empty list
==============
test case 1 of 1000000
initial: 6 7 5 3
ought2b: 6 6
outcome: 6 6
test case 2 of 1000000
initial: 6 2 9 1 2 7
ought2b: 6 6
2 2 2 2
outcome: 6 6
2 2 2 2
==
test case 3 of 1000000
initial: 9
ought2b:
outcome:
===
test case 4 of 1000000
initial: 60 6 2
ought2b: 6 6 0
0
outcome: 6 6
=========
test case 5 of 1000000
initial: 1 8 7 9 2 0
ought2b: 8 8 2 2 0
0
outcome: 8 8 2 2
0
===
6
0 0 6
00 00 00
test case 40000 of 1000000
initial: 5 5 1
ought2b:
outcome:
==========
0
test case 80000 of 1000000
initial: 2
ought2b: 2 2
outcome: 2 2
=====
6 2 2
6
2
2
======
======
222
==
test case 120000 of 1000000
initial: 4 4 1 8
ought2b: 4 4 4
4 8 8
outcome: 4 4 4 4 8 8
test case 160000 of 1000000
initial: 0 4 6
ought2b: 00 4 4 6 6
outcome: 0 0 4 4 6 6
====
2 2
test case 200000 of 1000000
initial: 1 7 0 3 7 7 3
ought2b: 0 0
outcome: 0 0
2
===
======
Transcribed Image Text:passed test on empty list ============== test case 1 of 1000000 initial: 6 7 5 3 ought2b: 6 6 outcome: 6 6 test case 2 of 1000000 initial: 6 2 9 1 2 7 ought2b: 6 6 2 2 2 2 outcome: 6 6 2 2 2 2 == test case 3 of 1000000 initial: 9 ought2b: outcome: === test case 4 of 1000000 initial: 60 6 2 ought2b: 6 6 0 0 outcome: 6 6 ========= test case 5 of 1000000 initial: 1 8 7 9 2 0 ought2b: 8 8 2 2 0 0 outcome: 8 8 2 2 0 === 6 0 0 6 00 00 00 test case 40000 of 1000000 initial: 5 5 1 ought2b: outcome: ========== 0 test case 80000 of 1000000 initial: 2 ought2b: 2 2 outcome: 2 2 ===== 6 2 2 6 2 2 ====== ====== 222 == test case 120000 of 1000000 initial: 4 4 1 8 ought2b: 4 4 4 4 8 8 outcome: 4 4 4 4 8 8 test case 160000 of 1000000 initial: 0 4 6 ought2b: 00 4 4 6 6 outcome: 0 0 4 4 6 6 ==== 2 2 test case 200000 of 1000000 initial: 1 7 0 3 7 7 3 ought2b: 0 0 outcome: 0 0 2 === ======
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 3 steps

Blurred answer
Knowledge Booster
Potential Method of Analysis
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
EBK JAVA PROGRAMMING
EBK JAVA PROGRAMMING
Computer Science
ISBN:
9781337671385
Author:
FARRELL
Publisher:
CENGAGE LEARNING - CONSIGNMENT