Answer:
#include <iostream>
#include <map>
using namespace std;
int main()
{
map<int, int> numbers;
cout << "Enter numbers, 0 to finish" << endl;
int number;
while (true) {
cin >> number;
if (number == 0) break;
numbers[number]++;
}
for (pair<int, int> element : numbers) {
std::cout << element.first << ": occurs " << element.second << " times" << std::endl;
}
}
Explanation:
One trick used here is not to keep track of the numbers themselves (since that is not a requirement), but start counting their occurrances right away. An STL map< > is a more suitable construct than a vector< >.
Answer:
new_segment = [ ]
for segment in segments:
new_segment.append({'name': segment, 'average_spend': money})
print( new_segment)
Using list comprehension:
new_segment =[{'name': segment, 'average_spend': money} for segment in segments]
Using map():
def listing(a):
contain = {'name': segment, 'average_spend': money}
return contain
new_segment = [ ]
new_segment.append(map( listing, segment))
print(list(new_segment)
Explanation:
The python codes above create a list of dictionaries in all instances using for loop, for loop in list comprehension and the map function which collect two arguments .
It depends on what algorithm you’re using.
If you’re going item by item, you’ll be looking at O(n) or O(40000)
Give me a reply if you want to know more, such as if you did binary search what the Big O notation is