C++ :: Sorting Function - Vector Swap

Jun 26, 2013

writing a sorting function that has an argument for a vector of ints rather than an array; it should use a selection sort algorithm.Here is what I have:

#include <iostream>
#include <vector>
#include <conio.h>
using namespace std;
void fillVector(vector<int> &aVector);
// PRECONDITION: number declared size of array a.
// POSTCONDITION: number_used is the number of values stored in a
//a[0] through a[number_used-1] have been filled with nonnegative int.

[code].....

View 7 Replies


ADVERTISEMENT

C++ :: Write Swap Function To Swap 2 Elements In Vector?

Nov 15, 2013

write a swap function to swap 2 elements in the vector?

View 3 Replies View Related

C++ :: Swap Elements Of Vector

Apr 21, 2014

how to swap the first and 'mid' elements of a vector?

View 2 Replies View Related

C++ :: Sorting Vector Of Complex Objects Using Custom Function

Mar 6, 2014

I am trying to use std::sort to sort a vector of complex objects using a custom function. However, it keeps erroring "Unresolved overloaded function type".

encounter::encounter(){
// ... cut
std::sort (allpeople.begin(), allpeople.end(), sortByInit);}
bool encounter::sortByInit (character& a, character& b) {
if (a.getinit () == b.getinit ()) {

[Code] ....

View 6 Replies View Related

C++ :: Using Swap Function In Array

Mar 16, 2014

The idea is to make an array and have it sort the contents inside the array in order from smallest to greatest by using a swap function. I don't know why it needs to be done this way when a sort function makes the most sense, but it is what it is.

For simplicity I want my array to only include three numbers. I was thinking {18,-2,24}. My only problem is that I am not understanding how to translate the swap function in an array. I tried using my previous swap function from another assignment and translate it to work for an array, but it doesn't work and I am completely lost and stuck. What I tried to do was this:

#include <iostream>
#include <cstdlib>
using namespace std;
const int SIZE = 3;
double myList[3] = {18, -2, 24};
void swap(myList[0], myList[1], myList[2]) {

[Code] ....

View 1 Replies View Related

C++ :: Swap Function To Put String In Alphabetical Order

Nov 10, 2013

So I been working on this c++ project and I need to be able to take three seperate strings and send them to function to put them in alphabetical order through a-z and use the swap function to return them in order. I been searching for problems like this but I haven't fame across any. I can copy my code onto here as well as a more detailed description of what I'm needing to do onto here if needed.

View 4 Replies View Related

C++ :: Thread With Lambda Function - Swap 3 Variables

May 13, 2014

I am trying to realize a simple code with thread and lambda function.

My goal is to swap 2 variable . I launch 2 thread,

The first:
Put his value in a shared variable and notify it .
wait until an event on a condition variable occur.
read from shared value .

The second wait until an event on a condition variable occur.
Wake up
read from shared value .
Put his value in a shared variable and notify it.

This is the code

thread t1([&p1]()->void{
m.lock();
nt++;
if(nt==1) {
//first thread
unique_lock<mutex> u1(m); ***

[Code] .....

Why it say error "abort() has been called " on the istr ***

View 2 Replies View Related

C++ :: Sorting Of Object In A Vector

Oct 24, 2013

I'm new to C++ especially vectors.. I've a question regarding sorting of object in a vector.. My object consists of x,y and civ. so I would like to know how do I sort the value of the civ in an descending order but at the same time retaining the value of x and y attached to it..

original
X: 4 Y: 5 CIV: 10
X: 3 Y: 2 CIV: 30
X: 3 Y: 3 CIV: 05

sorted
X: 3 Y: 2 CIV: 30
X: 4 Y: 5 CIV: 10
X: 3 Y: 3 CIV: 05

missionplan.cpp
void MissionPlan::topfives() {
stable_sort (topfive.begin(), topfive.end());
pointtwoD = topfive.at(i);
pointtwoD.displayPointdata();
}

View 2 Replies View Related

C++ :: Sorting A Vector Of Objects?

Feb 11, 2012

I'm implementing kruskal's algorithm and ran into some troubles compiling. I need to sort a vector of objects by value. Here is my code and the error I'm getting.

Code:

These are the two functions in graph.cpp (there are more but are unrelated)

#include <vector>
#include <algorithm>
#include <iostream>
using namespace std;
#include "graph.h"
#include "edge.h"
using std::vector;
void graph::sort_edgesArray() {

[code].....

//This is the error I'm getting.

graph.cpp: In member function "void graph::sort_edgesArray()":
graph.cpp:39:33: error: no matching function for call to sort
(std::vector<edge>::iterator&, std::vector<edge>::iterator&, <unresolved overloaded function type>)
/usr/include/c++/4.5/bits/stl_algo.h:5236:18: note: candidate is:
void std::sort(_RAIter, _RAIter, _Compare)
[with _RAIter = __gnu_cxx::__normal_iterator<edge*, std::vector<edge> >, _Compare = bool (graph::*)(edge&, edge&)]

View 3 Replies View Related

C++ :: Sorting On Two-dimensional Vector

Oct 30, 2012

Suppose I have a two-dimensional stl vector (a vector of vectors), for example:

Code : vector<vector<int> > x;

And then I want to sort the outer vectors in order of the size of their inner vectors. How do I do this?

Usually, with a one-dimensional vector, I can just create a comparison function and use the sort function. For example, if my vector is defined as:

Code:
vector<int> y;

And I want to sort if in terms of the int values of each vector element, then I can sort by using the stl::sort function, with the comparison function defined as:

Code:
static bool SortFunction(int val1, int val2) {
if (val1 > val2) {
return true;
} else {
return false;
}
};

However, with my two-dimensional vector, I use the following comparison function:

Code:
static bool SortFunction(vector<int> vec1, vector<int> vec2) {
if (vector1.size() > vector2.size()) {
return true;
} else {
return false;
}
};

I get a runtime error:

"Debug Assertion Failed!
File: c:Program Files (x86)Microsoft Visual Studio 10.0VCincludealgorithm
Line 3686
Expression: invalid operator<"

Why is this?

View 2 Replies View Related

C++ :: Sorting Vector Of Objects By One Of Their Attributes

May 1, 2013

I have a vector of Car* objects - vector<Car*> cars

Each object in the vector has an integer attribute called passengers, which can be returned using the function getPassengers().

How do I sort the vector by the objects' passenger int? I know I need to use sort() and presumably a comparison function but I'm not quite sure how.

View 2 Replies View Related

C++ :: Sorting Vector Of Strings Alphabetically

Aug 30, 2014

I'm trying to write a program that reads in from a .txt file the movie title, rating, director, actors etc. All I want to do is to just sort movie titles alphabetically and print all its attributes(director, actors). I tried using sort( movies.begin(), movies.end()) method, but it doesn't work.

here's my code btw:

#include <iostream>
#include <string>
#include <vector>
#include <fstream>
#include <algorithm>
#include <iterator>
#include "Movie.h"

[Code]...

View 2 Replies View Related

C++ :: Vector Int Sorting In Ascending Order

Feb 17, 2015

I want to sort a vector int in ascending order, but when I test, the output isn't correct - the vector is still unsorted. Am I calling it incorrectly?

int sorted (vector <int> a) {
int size = a.size();
sort(a.begin(), a.end());

View 2 Replies View Related

C++ :: Sorting And Calculating Median Of A Vector?

Dec 1, 2014

I am trying to to pull data from a file into a vector, then calculate different statistics from said vector. I've got everything working great except for one part. The program requires the median be calculated, which means I need to sort the data in the vector. However I can't do a quick easy sort, I'm required to use the functions swap(double, double), sort(vector), and index_of_smallest.

how to get these all working in sync to calculate the median(not to mention my algorithms appear to be wrong as I return nothing but 0's for the median value.)

I'm either not sorting right, or the index_of_smallest function is supposed to be doing something I don't realize.

#include <iostream> // for screen and kbd io
#include <iomanip>
#include <fstream> // file io
#include <cstdlib> // for exit()
#include <cmath> // for sqrt
#include <string>
#include <vector>
using namespace std;
void fill_vector(ifstream& in_file,vector<double>& v);

[code]...

View 1 Replies View Related

C++ ::  Sorting Float In A Vector Of Objects

Nov 2, 2014

I've a vector of objects that I can get my float value from by accessing it through a method.It's not a pointer of vector of objects though.

Meaning it's something like vector[i].getFloatValue().

However,how do I sort the float values by descending order since I access it through a method?

View 6 Replies View Related

Visual C++ :: Sorting A Vector Alphabetically?

Aug 25, 2014

I am reading a file and storing the data (all strings) into a vector. How would I sort this alphabetically?

View 4 Replies View Related

C++ :: Sorting Vector String In Alphabetical Order

Oct 26, 2013

I know there is a function in algorithm class called sort() but I need to sort ignoring the case of the alphabet

Is there any function that does that?

View 2 Replies View Related

C++ :: Sorting Large Numbers Of Vector Of Random Integers Returns All Zero

Jul 31, 2014

I tried to sort a large numbers of vector of random integers with std::sort(), but when the number increases over 10M, std::sort returns all zero in values. Does std::sort have a limitation of input numbers?

View 1 Replies View Related

C/C++ :: Unable To Use Priority Queue Sorting In Reverse Order To Take Vector Or 2D Array

Aug 7, 2014

I'm trying to use a priority queue sorting in reverse order to take a vector or 2d array. The problem is that I want to sort by the vector/array cell value but keep the reference to the vector/array index of the value. I don't know quite howto keep them both related so when I pop. I can find the corresponding cell.

priority_queue<int, vector<int>, greater<int> > Open;

View 2 Replies View Related

C/C++ :: Swap A Digit From A Number With Another Digit Using Function

Oct 26, 2014

Write a function which will take 3 arguments. The function needs to return a new number which is formed by replacing the digit on a given position in the number with a digit which is carried as an argument (the position in the number is counted from right to left, starting with one). Write a main program which will print the newly formed number.

Examples:
A function call of 2376, 3 and 5 should return the number 2576
A function call of 123456, 4 and 9 should return the number 129456

What I succeeded to do so far:
Figure out the logic for swapping the digit and write working code for it (in the main function).

What I failed to do so far:
Write a function which will return the desired result.

What is my problem:
I tried writing a function to do this, but as you see from my calculations, my result is divided in 3 parts. I don't know how to return more variables from a function.

Code:

#include <stdio.h>
int main() {
int inputNumber, swapPosition, swapDigit;
scanf("%d%d%d", &inputNumber, &swapPosition, &swapDigit);
int i, numberPart1 = inputNumber;
for (i = 1; i <= swapPosition; i++)

[Code] ...

View 8 Replies View Related

C++ :: Using Vector Push Back Function To Output Contents Of Vector (similar To Array)

Feb 9, 2015

How to output vector contents using the push_back function. My program reads in values just fine, but it does not output anything and I've been stuck on why.

here is my code:

#include <iostream>
#include <array>
#include <vector>
using namespace std;
int duplicate( vector < int > &vector1, const int value, const int counter)

[Code].....

View 3 Replies View Related

C++ :: Recursive Function 2 - Create Vector Of Vector Of Integers

Mar 26, 2013

Lets say that I have a vector of vector of integers. <1,2,3,4> , <5,6,7,8>, <10,11,12,13>

How do I make a function that creates vector of vector of every different integers?

<1,5,10> , <1,5,11>, <1,5,12>, <1,5,13>
<1,6,10> , <1,6,11>, <1,6,12>, <1,6,13>
<1,7,10> , <1,7,11>, <1,7,12>, <1,7,13>
<1,8,10>, <1,8,11>, <1,8,12>, <1,8, 13>
<2,5,10>, <2,5,11>, <2,5,12>, <2,5,13>

and so on...

View 2 Replies View Related

C++ :: Find Function To A Vector Of Structures Vector

Jul 5, 2013

I have asked a related question before, and it was resolved successfully. In the past, when I wanted to use std::max_element in order to find the maximum element (or even sort by using std::sort) of a vector of structures according to one of the members of the structure, all I had to do was to insert a specially designed comparison function as the third argument of the function std::max::element. But the latter comparison function naturally accepts two arguments internally.

For instance, here is a test program that successfully finds the maximum according to just one member of the structure:

Code:
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>

[Code] ....

And the output was this, as expected:
Maximum element S.a of vector<S> vec is at: 9
[I]max element of vec.a between slot 3 and slot 6 is: 6, and its index is: 6 vec[6].a = 6
[I]max element of vec.a between slot 4 and slot 7 is: 7, and its index is: 7 vec[7].a = 7
[I]max element of vec.a between slot 5 and slot 8 is: 8, and its index is: 8 vec[8].a = 8
[I]max element of vec.a between slot 6 and slot 9 is: 9, and its index is: 9 vec[9].a = 9

However, I now need to search and find an element of vector<myStruct> according to just one member of myStruct, instead of finding the maximum or sorting as before. This presents a problem because the function std::find does not accept such a comparison function as its third argument.

This was the description of the std::find function that I found: find - C++ Reference

Code:
template <class InputIterator, class T> InputIterator find (InputIterator first, InputIterator last, const T& val);

I could also find another function called std::find_if, but this only accepts a unary predicate like this: find_if - C++ Reference

Code:
template <class InputIterator, class UnaryPredicate> InputIterator find_if (InputIterator first, InputIterator last, UnaryPredicate pred);

And once again this is either inadequate of I don't see how to use it directly, because for the third argument I would like to insert a function that takes two arguments with a syntax like this:

Code:
int x=7;
std::vector<S>::iterator result;
result = std::find(vec.begin(), vec.end(), []( const (int x, const S & S_1) { return ( x == S_1.a ) ; } ) ;

Is there another std function that I can use to make search and find an element according to just one member of myStruct?

Or perhaps there is a clever way to pass two arguments to the unary predicate.

View 4 Replies View Related

C++ :: Making A Sorting Function?

Nov 23, 2013

#include<iostream>
#include<fstream>
#include<iomanip>

[Code].....

make it sort ascening wise for salaries and have the occupation sort with it.

View 6 Replies View Related

C++ :: Bubble Sorting With Function Templates

Jun 21, 2013

i'm new to C++ i came across this bubblesort program earlier relating to class templates i was wondering how to make this into simple function templates

#include<iostream>
#include<iomanip.h>
#include<conio.h>
#include<stdio.h>
using namespace std;
template <class t>
class bubble

[Code] ....

View 3 Replies View Related

C :: Passing Array Of Struct To Sorting Function

Mar 6, 2015

how is this done not really sure .

Code:
//prototype
void improvedbubblesort (struct team Table[]);
//this is defined out side of main

[Code]....

the whole code is very long but can post if necessary . Basically i get no errors in this but its not sorting them . Think its in the way i pass the array of struct .

View 3 Replies View Related







Copyrights 2005-15 www.BigResource.com, All rights reserved