What would be the best way to arrange a sequence of numbers such that the sum of any two adjacent number is a prime number E.g.: 7,6,5,2,1,4,3 is one such sequence for numbers between 1 to 7.
arrange sequence of numbers such that sum of adjacent number is a prime number
2.6k views Asked by Hemal At
1
There are 1 answers
Related Questions in ALGORITHM
- MCNP 6 - Doubts about cells
- Given partially sorted array of type x<y => first apperance of x comes before first of y, sort in average O(n)
- What is the algorithm behind math.gcd and why it is faster Euclidean algorithm?
- Purpose of last 2 while loops in the merge algorithm of merge sort sorting technique
- Dots and Boxes with apha-beta pruning
- What is the average and worst-case time complexity of my string searching algorithm?
- Building a School Schedule Generator
- TC problem 5-2:how to calculate the probability of the indicator random variable?
- LCA of a binary tree implemented in Python
- Identify the checksum algorithm
- Algorithm for finding a subset of nodes in a weighted connected graph such that the distance between any pair nodes are under a postive number?
- Creating an efficent and time-saving algorithm to find difference between greater than and lesser than combination
- Algorithm to find neighbours of point by distance with no repeats
- Asking code suggestions about data structure and algorithm
- Heap sort with multithreading
Related Questions in STL-ALGORITHM
- Can output range of algorithms in <numeric> in C++ overlap with the input range?
- Is there a safe (defined behaviour) way to use the STL to reduce the boilerplate of efficiently filtering a vector based off its indices?
- How can I call ExecutionPolicy algorithms in a constexpr context?
- Flatten vector of classes which contain vectors of structs
- How to filter and transform cpp vector to another type of vector?
- STL algorithm and (end of) arrays
- How should I assume which iterator category an algorithm uses?
- STL algorithm to get a per-vector-component min/max
- How to replace a for-loop with STL based algorithm or range based loop?
- How can I convert std::vector<T> to a vector of pairs std::vector<std::pair<T,T>> using an STL algorithm?
- how to create custom intersected container from 2 distinct container types
- C++ loop breaked 'cause the std::find algorithm
- Lambda function, arguments and logic in c++
- How to erase non-alpha chars and lowercase the alpha chars in a single pass of a string?
- Standard algorithm to operate on adjacent elements
Related Questions in EVOLUTIONARY-ALGORITHM
- Nevopy for games with two or more players
- Levy flight function for the Monarch Butterfly Optimization Algorithm
- XOR with NEAT Algorithm
- Implement evolutionary algorithm with TensorFlow
- MOEA/D Algorithm Always Returning a Single Solution Instead of the Pareto Frontier
- Error in lm.fit(x, y, offset = offset, singular.ok = singular.ok, ...) : NA/NaN/Inf in 'y'
- How to improve evolutionary algorithm for dices
- Couldn't get more than two solutions in pymoo
- How to retrieve species Id in NEAT to plot species over generations?
- Optimizing nested coordinate transformation
- Neural Network with Evolution Strategies optimizer keeps outputting the same accuracy on MNIST - Pytorch
- Parameter optimization for NEAT-Python
- Include early stopping in GAFeatureSelectionCV with keras model
- Re-initialize the population in Evolutionary.jl (Julia) - using callback?
- Genetic Algorithm does not improve solution (Set Covering Problem)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
As far as I see it, the easiest way to tackle this problem is to break it into two parts that are more well defined:
Generate an undirected graph, so that each vertex is a number in this list of numbers and each edge links a pair of numbers that can be adjacent. Or in other words, generates a graph that connects any two numbers that has a prime number sum. This can be done in quite a straightforward manner by looping through 2 indices.
Find a Hamiltonian path for the aforementioned graph. That is the sequence you want. This is somewhat a well-studied problem and a number of algorithms exist. You just need to pick one and there might be a native implementation in software like Mathematica. This would be even faster than O(n^2).
Of course you can find multiple ways to speed up the first step, if you know a bit more about what kind of list of numbers you are dealing with.