Implement algorithm in C

You need to implement following two functions in C language:

void preserveTopNValues(double* data, size_t size, size_t n);

void fastPreserveTopNValues(double* data, size_t size, size_t n);

Detailed explanation:

Array "data" contains "size" values which may go in any order (i.e. can be both sorted or unsorted)

and may have duplicates.

Both functions must find top "n" unique absolute values in the "data" and preserve them,

and set other elements of array to zero.

Function "preserveTopNValues" must complete the abovementioned task with minimum additional memory usage,

while may do it slower.

Function "fastrPreserveTopNValues" must complete the abovementioned task with maximum speed,

while may use more additional memory.

Other requirements:

1. Functions must be implemented in plain C (not C++ !!!)

2. Code must conform to C99 standard.

3. Code must be formatted according to Linux astyle and well commented.

4. Code must use "camel case" naming of variables and functions.

5. Code must be compilable without errors on Linux with GCC 4.8.2+ with following compiler options set:

-Wall -Wextra -Werror -std=c99

6. Function can use only standard C library, usage of any 3rd party libraries is strictly not allowed.


1. Source code of functions.

2. Sample program (also delivered as source code) that:

- dispays input data

- calls functions

- dispays output data

- proves that output matches to expected result

- proves that both functions give the same output on the same inputs.

3. GNU Make compatible Makefile to build the sample program.

4. Small plain text file called [url removed, login to view] that shortly explains both algorithms and why they were chosen for the particular variant of implementation (normal/fast).

Навички: Алгоритм, Програмування на С

Деталі: linked list algorithm in data structure using c, graph library c, c program to implement dijkstra algorithm using priority queues, c algorithm tutorial, c algorithm questions, c algorithm interview questions, c algorithm binary search, binary search in c algorithm, algorithm of prime number in c, algorithm of binary search in c, algorithm for priority queue in c, algorithm for prime numbers in c, algorithm for binary search in c, algorithm and data structure in c, c++ algorithm, C algorithm, algorithm implement btree, algorithm implement matlab, implement algorithm trading system project involve, implement longest common subsequence algorithm, algorithm implement distance vector, implement distance vector algorithm, algorithm implement

Про роботодавця:
( 5 відгуки(-ів) ) KHARKIV, Ukraine

ID Проекту: #11788748




$30 USD за 3 дні(-в)
(4 відгуків(-и))

10 фрілансерів(-и) у середньому готові виконати цю роботу за $44


hi there I would like to do this project if given the opportunity. let me know if you are interested so I can have further details. thanks.

$30 USD за 1 день
(413 відгуків(и))

I can do

$60 USD за 1 день
(104 відгуків(и))
$78 USD за 1 день
(6 відгуків(и))
$30 USD за 1 день
(10 відгуків(и))
$25 USD за 1 день
(6 відгуків(и))

We are team of excellent developers and writers. We have 2 year experience related to your project field. We can do your project and solve your all problems according to your requirements. We have read your description Більше

$20 USD за 1 день
(2 відгуків(и))
$25 USD за 1 день
(2 відгуків(и))

I’d like to be considered for your Implement algorithm in C Project. I'm software engineer with more then 3 years experience in Development & Designing. I'm expert in C, C++, C#, Java, Python, Ruby, Software Develo Більше

$25 USD за 0 дні(-в)
(2 відгуків(и))

We are highly experienced Post Graduate Engineers, Doctors, IT, ITES, Software, Infrastructure Professionals, Web Designers and IT Architects. We can redo, improve, and publish any engineering, scientific MATLAB, S Більше

$150 USD за 1 день
(0 відгуків(и))

Hi, Thank you very much for posting this project i like to complete your project in a smooth fashion, i like you to check my ability either by directly giving the project or first check my profile an decide. Більше

$25 USD за 1 день
(0 відгуків(и))

My name is Anson, I am a programmer of around 10 years now from the United States, educated at the University of California. My bid is slightly on the higher side, but if you are willing to pay the extra, I promise th Більше

$50 USD за 1 день
(0 відгуків(и))

Hello This is a example code, I can to make a better code #include <stdio.h> void preserveTopNValues(double* data, size_t size, size_t n) { int i; for(i = 0; i < n, ++i) { if(i > size ) { data[i Більше

$25 USD за 10 дні(-в)
(0 відгуків(и))