Combine 300,000+ Sorted Lists with Millions of Unique Elements into 1 Large Sorted Array
$250-750 USD
Closed
Posted over 8 years ago
$250-750 USD
Paid on delivery
I need an algorithm expert to create a PHP Class/Algorithm that can merge Thousands of Small Sorted Lists (max 10 elements in each list) into one large sorted list.
All of the small lists have unique elements in them that are sorted by popularity from 1 - 10 (or less).
Out of all of the small lists, some will have 1 (or more) duplicated elements between them which will give the ability to merge them. Some Lists may have completely unique elements not found in any other list, these will not be combined. ( I am unsure how to combine these, but any that are not completely unique should be combined into as few number of arrays as possible. These might require another project to combine using other data.)
Due to the large number of lists in a set (about 500,000 max) with around 3-5million unique elements, the amount of memory and processing power should be taken into consideration. And the amount of time to process needs to be relatively short (it can't take weeks for one set, it should take less than a day, and preferably less than an hour per set of 500,000 lists). If everything fits in memory that is ideal, I would need to know how much would be required (estimated memory and number of CPUs)
This is not a website, its a simple PHP algorithm that will be ran on a webserver on an ongoing basis. The input will come from a text file with list identifiers, elements, and element ranks per row of text, and the output should be a PHP array. (The Text file will be made available to you via DropBox or Google Share, this is only for your use as the resulting php code will have the same type of input, but will be via a text file on its residing server)
Example: (Rank can be also thought of as Priority)
List 1:
"John" - Rank 1
"Peter" - Rank 2
"Sally" - Rank 3
"Kelly" - Rank 4
"Chris" - Rank 5
List 2:
"Stacy" - Rank 1
"John" - Rank 2
"Matt" - Rank 3
"Jen" - Rank 4
"Cal" - Rank 5
Combined List Result Example (using the algorithm)
"Stacy" - Rank 1
"John" - Rank 2
"Peter","Matt" - Rank 3 (and/or Greater than Stacy,John but Less than Sally & Jen)
"Sally","Jen" - Rank 4 (and/or Greater than Peter,Matt but Less than Kelly & Cal)
"Kelly","Cal" - Rank 5 (and/or Greater than Sally,Jen but Less than Chris)
"Chris" - Rank 6
To qualify, you must post in your comments this quote "I have read and understand the requirements for this project, I can do what you ask using PHP."
Thank You,
p.s. If you can get this done in 2 days after I give you the text file, I will offer a $100 bonus tip if the algorithm works correctly.
Hello Matthew
Thanks for inviting us on this project.
'I have read and understand the requirements for this project, I can do what you ask using PHP'
We are interested to code this Algorithm for the client being an expert PHP deveopment team. We have been working with PHP coding for the last seven years and we are confident to complete this project with perfection and will be able to grab the promised bonus.
I have gone through the requirement and found this is a project for a qualified development team who are very experienced dealing with PHP programming with exceptional skills and I believe we posses the skill to complete this project accordingly.
Let me know if you have any questions anywhere.
Thanks
Feroz Shams
Senior PHP Developer
Trenza Softwares
I have read and understand the requirements for this project, I can do what you ask using PHP
I am expert in php, and processing text files using php, I can complete the project using minimum server resources, I have experience of handling more than 20 millions rows using average server configuration.
I can complete the project within 2 days, Message me for more details and discussion
I have read and understand the requirements for this project, I can do what you ask using PHP
I am a PHP expert and have done large text file processing before and know what to do when it comes to optimising for speed and memory usage.
I have my own dedicated server so I will be able to monitor CPU and memory usage when testing the algorithm.
I will try to complete this job for you in 2 days and I will not deliver until i'm 100% happy with the work, so no bugs/slow processing as I strive for 100% perfection :)
I hope to hear from you soon.
Regards
Rob
I have read and understand the requirements for this project, I can do what you ask using PHP, so please feel free to contact me to discuss details. Thanks!