Exam question for a beginner coder
Joe Pegler
Greenhorn
Posts: 16
posted 4 years ago
Mike is right, your algorithm for finding the largest number in an array is not quite right.
Here are some guidelines that will help you come up with a better approach:
1. You may only iterate through the entire array once.
2. You may only look at one array element at a time (your current algorithm looks at two elements on each iteration).
3. Besides the array and (possibly) a loop index, you may use only one other variable in your algorithm
Imagine solving this problem with realworld objects. The array is a row of boxes, each filled with an unknown random number of marbles. You are asked to find out what is the most number of marbles in any of the boxes. Basically the same rules apply: you may only count the marbles in one box at a time. When you're done with a box, you may never look at it again. You are not allowed to memorize or remember anything about a box or its contents after you are done looking at it. The only "memory device" you are allowed to use is a small notepad. You are given a pencil which has an eraser so you can erase your current note before jotting down a new note.
Given these rules, what is the most straightforward way you can think of to figure out the most number of marbles in any of the boxes.
Here are some guidelines that will help you come up with a better approach:
1. You may only iterate through the entire array once.
2. You may only look at one array element at a time (your current algorithm looks at two elements on each iteration).
3. Besides the array and (possibly) a loop index, you may use only one other variable in your algorithm
Imagine solving this problem with realworld objects. The array is a row of boxes, each filled with an unknown random number of marbles. You are asked to find out what is the most number of marbles in any of the boxes. Basically the same rules apply: you may only count the marbles in one box at a time. When you're done with a box, you may never look at it again. You are not allowed to memorize or remember anything about a box or its contents after you are done looking at it. The only "memory device" you are allowed to use is a small notepad. You are given a pencil which has an eraser so you can erase your current note before jotting down a new note.
Given these rules, what is the most straightforward way you can think of to figure out the most number of marbles in any of the boxes.
Junilu  [How to Ask Questions] [How to Answer Questions]
Campbell Ritchie
Marshal
Posts: 53110
124
Mike Simmons
Ranch Hand
Posts: 3090
14
posted 4 years ago
Then why are you asking if it's OK, if you haven't shown us the latest version? What you've shown does not work, as you can easily verify with the test i described.
Joe Pegler wrote:I didMike Simmons wrote: Not unless you've changed it since you posted it above
Then why are you asking if it's OK, if you haven't shown us the latest version? What you've shown does not work, as you can easily verify with the test i described.
What are you doing? You are supposed to be reading this tiny ad!
the new thread boost feature brings a LOT of attention to your favorite threads
https://coderanch.com/t/674455/ThreadBoostfeature
