How To Generate All Real Combinations From String Array
Apr 2, 2012
I need to generate all combinations (not permutations) in VB .NET, I've been search and all I found is for permutations (some says combinations but when I was try it, all are permutations).
What I need is to generate combinations from string array:
Dim data_array As String() = {"one", "two", "three", "four", "five", "six"}
I need that: If I say just 1 length, it must returns:
one
two
three
four
five
six
If I say 2 length, it must returns:
oneone
onetwo
onethree
onefour
... etc ...
twoone
twotwo
twothree
... etc ...
And continues til end with all combinations. If I say more length do it as well.
I am trying to generate all possible 3 or 4 digit combinations from 0 to 9. I will be outputting them to a text file but I just need help with actually generating them.
I would like a function generate all of the k-combinations of elements from a List of n elements. Note that I am looking for combinations, not permutations, and that we need a solution for varying k (i.e., hard-coding the loops is a no-no).
I am looking for a solution that is a) elegant, and b) can be coded in VB10/.Net 4.0.
This means a) solutions requiring LINQ are ok, b) those using the C# "yield" command are not.
The order of the combinations is not important (i.e., lexicographical, Gray-code, what-have-you) and elegance is favored over performance, if the two are in conflict.
(The OCaml and C# solutions here would be perfect, if they could be coded in VB10.)
This question is virtually the same as this SO post, only I'm looking for a VB.NET (.NET 4) solution. I've spun my wheels long enough trying to come up with a generic solution to solving this "power set" problem.
Dim choices As IEnumerable(Of String) = {"Coffee", "Tea", "Milk", "Cookies"} Dim choiceSets = choices.CombineAll()
I'm looking for choiceSets to be an IEnumerable(Of IEnumerable(Of T)) so that I can do something like:
For each choiceSet in choiceSets Console.WriteLine(String.Join(", ", choiceSet)) Next
[code]...
As you can see, this is every non-repeating combination from the source IEnumerable(Of T) (which could have 1 to many items in it - this example only had 4), it operates based on the order of the items in the source IEnumerable(Of T), and each item in the list is >= the previous item in terms of number of items in the inner IEnumerable(Of T).
For what it's worth, this is not homework; though it sure does feel like it. EDIT: Updated the example so it does not look like the result is alphabetically sorted, to stress that the source IEnumerable(Of T)'s existing order is used and added a 4th choice to clarify the sorting requirement within each set.
I am working on a project in which I would like to generate a map. It should be in bitmap form, and should include such things as roads and cities. I DO NOT want to generate a map of a real place.
I have finally made the switch VB.net and I am using VS2010 .NET 4.0 with WinForms. I want to generate a real time 2D plot with autoscaling and update the graphics/picturebox/form/<insert control here> from another thread so when I click a menu the device doesn't halt. The graphics are intensive in that a function is continually reading from hardware and drawing the data. I have been able to do this in VB6 (minus the multithreading) with GDI API and it ran great. Now in VB.NET GDI+ is used which is extremely slow. So my questions are as follows:
1) Should I go back to GDI commands or will this be outdated soon.
2) Should I use Direct2D, if so do I need to switch to WPF and are there any WinForm examples
3) Best approach to multithread this, if I double buffer can I have the GUI thread periodically read the buffer and display it. How can I tell the drawing thread to post an update and the UI thread displays it when it has the chance, similar to using InvalidateRect()
I am trying to generate a combination of string words and this is not permutations. For example if I had a list of words like (bat, cat, dog, egg...)then try and generate n(n-1)/2 combinations like
bat cat dog egg batcat catdog dogegg batcatdog catdogegg
On VB.NET 2005 and 2008, if you were debugging you could roll over the variable you set as an array and a little "+" would pop up next to the array variable and you could click it and see all of the data loaded into the array.
I have two databases, one on my local work computer and other on a server. Both have been created with Microsoft SQL Server 2008. I can access both of them with connection strings that contains names of the servers and some other information. However the names contain only the ip-number of the server. And I need the full name of the server and the instance created, separated with "" character. I can see them in my SQL management studio but I need to get them from VB-code.I created SqlConnection-class but it finds only the ip-addressed name. SqlSourceDataEnumerator won't do good because it finds all unnecessary server names that I don't need. How can I find the real name of the server that is specified in the connection string?
<edit> Now showing the difference as a DECIMAL. Result looks like zero every time. </edit>Disclaimer: This code is provided "as-is" and should be treated as Freeware.( However any donations would be welcome as I have a "so-so" part-time job ).Please note all real numbers to be used should be in this format "0.000000000000"Do not use numbers in string format in scientific notation like "1.2345E -06"I was feeling bored and decided to add to the code from JohnWein in this thread where I have used a routine that will multiply the contents of two long strings together.>>[url]I have now added a bit of code so you can multiply two really long numbers with or without a decimal point as a full-stop ( period or dot, call it what you like ).
I have a string I want to parse. I could write the code to do so, but I figured that VS.NET has a parser that should do this for me.however, I can't find it. All the searches I do return info on how to parse numeric values in string form into real numbers. It would be nice if the MSDN search had some ways to allow users to enter more details than just search text and 3 ways to filter out irrelevant stuff. In any case, I also tried things like string.parse (nope - although I kinda figured this would be it.) I also looked at Enum.parse, but the code indicates that it works with arrasy of items, not strings.
I am making an application that randomly generates numbers. I then have to find out if those numbers are even or odd. Then place them in the corresponding array ( EvenNumbers() or OddNumbers() ). Then display the random numbers array then the even and odd numbers array. I am up to the point where I have the generated numbers and can tell if they are even or odd, but can't get them into an array. I am trying to do it like this....
I need assistance generating a xml file by reading values from an array of structs.
my struct looks like this: public structure myStruct dim ID as int dim myArray1 as boolean dim myArray2 as boolean dim myArray3 as boolean dim x as int dim y as int
I have several instances of these structs. I also have universal variables that are declared outside of the structs. I am looking to generate a xml file like this:
[Code]...
But how would I assign the values of each element by reading them in from the struct? Or do I need to use the XmlSerializer Class instead?
I try to generate 10 random integers and store it in an array(9). Then I split the array into half by converting it into string. My code can compile but it sometimes work and most time cannot work. I don't know what is the problem....
Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
I'm trying to make a Bulls and Cows type game, I was able to do it fairly easily with javaScript, but VB is killing me. I can get the array 5 slots long with random numbers, unfortunately they're all repeats. when I try getting no repeats I run into infinite loops, exponentially increasing array lengths, and just plain old arrays with 5 numbers randomly generated, but with repeats.
I'm trying to do this with loops, in JS I did it using regular expressions
Here's an example of my code.
Public Class Form1 Dim intRand(0) As Integer Dim RandomClass As New Random
I wanted to generate random integer and put into array(9). My code is as follow:-
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Randomize() Dim rand As New Random
[code]....
I wanted the results to be ans = 3412657846 But instead I get ten ans results. So that means the rand.Next generate ten integer to array(0) and so on.I just want one random integer in array(0) and so on....
i want to generate random numbers which will be put in an array and displated in a grid. the user has to provide a lower and upper bound. method overloading also has to be used in order to generate the numbers
i need to generate the 200 character as a string at random and search for the fifth and the third vowel. this is what i have done so far but im only getting one character at random!! [code]
I need to generate a lot of random 2 character strings for my application. it's a VB console application. basically what I have tried for random strings is this: