answersLogoWhite

0

Arrays provide the most compact method of representing one or more element of the same type in computer memory (whether in working memory or on disk). There is absolutely no memory overhead with arrays, other than when the array is allocated on the heap in which case you need to maintain at least one reference or pointer to the allocated memory. The structure of the array is built-in to the array itself, such that one element immediately follows another, and each element is exactly the same length (in bytes). This makes it possible to access any element in the array in constant time using simple pointer arithmetic. That is, knowing the start address of the array allows you to reference any element in the array using a memory offset or suffix operator. The first element is always found at offset zero (the start of the array) while the next is at offset 1. Thus for an n-element array, the final element will be at offset n-1. By offset, we really mean offset * sizeof (type), where type is the type of each element in the array. However, when working with arrays, the language knows the size of each type therefore we just use the offset as a zero-based index, where element 5 will be found at index 4, which is 4 * sizeof (type) bytes from the start of the array.

Given that arrays allow constant-time random access, loops make it extremely easy to traverse arrays from any element to any other element, both forwards and backwards. The loop control variable simply acts as the index to the element we wish to process on each iteration of the loop. We can also choose to skip elements if we're only interested in every other element, or every third element, simply by incrementing the control variable accordingly.

Looping through array indices is only efficient when you actually intend to traverse the array, such as when printing the entire array. When searching arrays for a specific value, loop traversal is the least efficient method. If we plan to search an array many times for many different values, it pays to sort the array first. We can then use the binary search technique, starting from the middle element. If that's not our element, the fact the array is sorted means we can eliminate one half of the array, depending on how the middle value compares to the value we are searching for. We then repeat the process with the remaining half, reducing the remaining elements by half each time until we either find our value, or the remaining half has no elements (in which case the value does not exist).

User Avatar

Wiki User

10y ago

What else can I help you with?

Related Questions

Can arrays be used in for loops?

yes


How can loops be used to process arrays give examples?

How_can_loops_be_used_to_process_arrays


Give a business example of how loops can be beneficial in a program?

Give a business example of how loops can be beneficial in a program?


What are the basic parts of the c language?

That would include header files, data types, loops, functions, pointers, arrays


Is there another program like Fruity Loops?

Reason is very similar as Fruity Loops, its a better program and takes a little more time to master


Why you use different loops in c language?

We use this in order to make program easier and less complex.some program cannot be performed without loops


How can loops be used to process arrays?

Loops can be used to iterate or walk through an array. For example, suppose you have an array already initialized (we'll call it "array"): int target = -1; for (i=0; i < array.length(); i++){ if (array[i] = target){ //do something } } Here, we will walk through an array (note that arrays are zero indexed) using a loop to make sure we hit each element of the array. In our loop, we start at the head (or first element) and iterate over each element.


Why you use Loops?

Loops are used to repeat the execution of the same set of instructions again and again in a program.


Can you use the loops and arrays together?

Yes. int main(void){ int a[10]; int i=0; while(i<10 && a[i++]=i); return 0; }


In what instanses can i use the loops?

Whenever there is a repetition in the program.


What are the disadvantages of the While Loop?

With loops, your program is slower.


Can you use two while loops in a program?

You can use zero or more while-loops, there is no limit.