
C++
(Linked list) complete the functions:
You have to continue on implementing your Array List namely the following functions:
Example ArrayList: [10, 30, 40, 50]
- void addAt(int num, int pos)
This method will add the integer num to the posth position of the list.
Performing addAt(20, 2) in the example list will add 20 at the 2nd position and the array will now look like this: [10, 20, 30, 40, 50]
When the value of pos is greater than the size + 1 or less than one, output "Position value invalid"
- void removeAt(int pos)
Removes the number in the posth position of the list.
Performing removeAt(3) in the example list will remove the 3rd element of the list and the updated array will be: [10, 30, 50]
When the value of pos is greater than the size or less than one, output "Position value invalid"
My incomplete code:
#include <cstdlib>
#include <iostream>
using namespace std;
class ArrayList : public List { // : means "is-a" / extend
int* array;
int index;
public:
// CONSTRUCTOR
ArrayList() {
array = (int*) malloc(10);
index = 0;
}
void add(int num) {
*(array + index) = num;
index++;
}
void remove(int num){ // first num that we found
// FIND the num
for (int i = 0; i < index; i++) {
if (num == *(array + i)) { // we have found the num
for (int j = i; j < index - 1; j++) {
*(array + j) = *(array + j + 1);
}
index--;
return;
}
}
}
int get(int pos){
return *(array + pos - 1);
}
int size(){
return index;
}
void print() {
cout << "[";
for (int i = 0; i < index; i++) {
cout << *(array + i);
if (i != index - 1) {
cout << ", ";
}
}
cout << "]";
}
void addAt(int num, int pos) {
}
void removeAt(int pos) {
}

Trending nowThis is a popular solution!
Step by stepSolved in 3 steps

- Remove Char This function will be given a list of strings and a character. You must remove all occurrences of the character from each string in the list. The function should return the list of strings with the character removed. Signature: public static ArrayList<String> removeChar(String pattern, ArrayList<String> list) Example:list: ['adndj', 'adjdlaa', 'aa', 'djoe']pattern: a Output: ['dndj', 'djdl', '', 'djoe']arrow_forwardC++arrow_forwarddef cartesianproduct(lst): """Takes a list of sets/frozensets and computes their Cartesian product""" cartesianproduct: This function should accept a list of one or more sets or frozensets (you can convert between them using set(fro_st) and frozenset(st)). Its output is a set or frozenset encoding the cartesian product; thus a list of two sets [{0,1}, {1,2}] could give back {(0,1),(0,2),(1,1),(1,2)}. In general, an input list of length N will yield a set of tuples of length N each.arrow_forward
- In c++arrow_forwardc++,CPP,C++ Language (Linked List) Implement the singly linked list of Employee with data members Name, id andsalary. Add at least 5 nodes in the list. You will create a pointer named as head tokeep the address of first node of list. Create the following functions:arrow_forwardPart 2: Unroll Write a function called unroll, which takes in a square array of arrays (i.e. a grid with n rows and n columns). An input could look like this: const square = [ [1, 2, 3, 4], [5, 6, 7, 8], ]; [9, 10, 11, 12], [13, 14, 15, 16] unroll should take in such a square array and return a single array containing the values in the square. You should obtain the values by traversing the square in a spiral: from the top- left corner, move all the way to the right, then all the way down, then all the way to the left, then all the way up, and repeat. For the above example, unroll should return [1, 2, 3, 4, 8, 12, 16, 15, 14, 13, 9, 5, 6, 7, 11, 10].arrow_forward
- Use stack concepts Q #2 Ô https://www.loc-cs.org/~chu/DataStructu Essay Questions (20% each)- continue [0] [1] [2] [3] myList "Bashful" "Awful" Jumpy "Happy The above "myList" is an ArrayList in Java program. 2. If I want to remove "Awful" from myList, which of the following actions should I take first? a. Move "Happy" to the previous element first. b. Move "Jumpy" to the previous element first. Describe the reason of your choice. Next Pagearrow_forwardC++ Write a loop that sets each array element to the sum of itself and the next element, except for the last element which stays the same. Be careful not to index beyond the last element. Ex:Initial scores: 10, 20, 30, 40 Scores after the loop: 30, 50, 70, 40 The first element is 30 or 10 + 20, the second element is 50 or 20 + 30, and the third element is 70 or 30 + 40. The last element remains the same. #include <iostream>using namespace std; int main() {const int SCORES_SIZE = 4;int bonusScores[SCORES_SIZE];int i; for (i = 0; i < SCORES_SIZE; ++i) {cin >> bonusScores[i];} /* Your solution goes here */ ////for (i = 0; i < SCORES_SIZE; i++) { This is my//// current Solution////bonusScores[i] += bonusScores[i + 1]; ////////////} for (i = 0; i < SCORES_SIZE; ++i) {cout << bonusScores[i] << " ";}cout << endl; return 0;} with the for loop i have now, the…arrow_forwardmergeAndRemove(int[], int[]) This is a public static function that takes a int[] and int[] for the parameters and returns an int[]. Given two arrays of integers. Your job is to combine them into a single array and remove any duplicates, finally return the merged array.arrow_forward
- ### Q5: Reduce No Change Python def reduce_no_change(fn, lst, base): """Same as Q4. However, preserve the lst in this problem. Object can be any python type which the input Not Allowed To Import Libraries Args: fn (function): Combination function which takes in two arguments and return an value with the same type as the second argument lst (List): A list of any type base (Object): A value of custom type which fn can handle. Returns: Object: A value after applying fn on lst. >>> reducer = lambda x, y: x + y >>> lst = [1, 2, 3] >>> a = reduce_lst(reducer, lst, 0) >>> a # a = reducer(reducer(reducer(base, lst[0]), lst[1]), lst[2]) 6 >>> lst >>> [1, 2, 3] # we preserve the list """ ### Modify your code here ### Modify your code herearrow_forwardWrite a void function called largerThanLast whose heading is given below. The function should print all the numbers in the array which are larger than the last element in the array. arraySize represents the number of elements in the array. void largerThanLast (int List[ ], int arraySize)arrow_forwardcode in c programarrow_forward
- Database System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- C How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education





