[#303658] Remove Parts of a String — Dan __ <major_general_joe@...>

Alright, this is probably a really simple question to answer, but I just

15 messages 2008/06/01

[#303876] deleting first line from a file — suresh <suresh.amritapuri@...>

Hi

16 messages 2008/06/03

[#303934] Module philosophy — "Leslie Viljoen" <leslieviljoen@...>

Sorry to beat a dead horse, but to confirm: the only way to mix a

12 messages 2008/06/04

[#303941] A complete guide for Ruby Progammers — Mc Mohd <mcmohd@...>

This tutorial gives you complete knowledge starting from basic to

23 messages 2008/06/04
[#303943] Re: A complete guide for Ruby Progammers — Davi Vidal <davividal@...> 2008/06/04

Em Wednesday 04 June 2008, Mc Mohd escreveu:

[#303945] Re: A complete guide for Ruby Progammers — Mc Mohd <mcmohd@...> 2008/06/04

Sorry pal missed to send URL. Its here:

[#303947] Re: A complete guide for Ruby Progammers — "Oscar Del Ben" <thehcdreamer@...> 2008/06/04

Thanks for your work ;)

[#303948] Re: A complete guide for Ruby Progammers — "Leslie Viljoen" <leslieviljoen@...> 2008/06/04

This tutorial looks strangely familiar!

[#303957] A crosspost from the Perl Community — Star Cross <starx@...>

All,

55 messages 2008/06/04
[#303983] Re: A crosspost from the Perl Community — David Masover <ninja@...> 2008/06/04

On Wednesday 04 June 2008 12:20:37 Star Cross wrote:

[#304212] Re: A crosspost from the Perl Community — Jenda Krynicky <jenda@...> 2008/06/06

David Masover wrote:

[#304303] Re: A crosspost from the Perl Community — David Masover <ninja@...> 2008/06/07

On Friday 06 June 2008 12:02:19 Jenda Krynicky wrote:

[#305043] Re: A crosspost from the Perl Community — Jenda Krynicky <jenda@...> 2008/06/13

David Masover wrote:

[#304075] Re: A crosspost from the Perl Community — Dave Bass <davebass@...> 2008/06/05

Coming to Ruby recently from Perl, these are my comments.

[#304084] Re: A crosspost from the Perl Community — "Eric Mahurin" <eric.mahurin@...> 2008/06/05

On Thu, Jun 5, 2008 at 10:00 AM, Dave Bass <davebass@musician.org> wrote:

[#304175] Re: A crosspost from the Perl Community — Dave Bass <davebass@...> 2008/06/06

Eric Mahurin wrote:

[#304217] Preferable Pairs (#165) — "Matthew Moss" <matthew.moss@...>

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

17 messages 2008/06/06

[#304230] Desktop multi-plataform ruby app — "Israel Guerra" <israel.guerra@...>

Hail everyone!

60 messages 2008/06/06
[#304237] Re: Desktop multi-plataform ruby app — Charles Oliver Nutter <charles.nutter@...> 2008/06/06

Israel Guerra wrote:

[#304241] Re: Desktop multi-plataform ruby app — James Britt <james.britt@...> 2008/06/06

Charles Oliver Nutter wrote:

[#304242] Re: Desktop multi-plataform ruby app — "Israel Guerra" <israel.guerra@...> 2008/06/06

But guys, maybe im wrong about jruby, but its a ruby interpreter running in

[#304271] Re: Desktop multi-plataform ruby app — "Victor Reyes" <victor.reyes@...> 2008/06/07

On Fri, Jun 6, 2008 at 4:15 PM, Charles Oliver Nutter <

[#304240] Re: Desktop multi-plataform ruby app — James Britt <james.britt@...> 2008/06/06

Israel Guerra wrote:

[#304309] Re: Desktop multi-plataform ruby app — Tom Cloyd <tomcloyd@...> 2008/06/07

James Britt wrote:

[#304284] using portions of other methods in a new method — Jason Lillywhite <jason.lillywhite@...>

How do you take a piece of a method and use it in another? Here is my

10 messages 2008/06/07

[#304353] Ruby wishlist — jzakiya <jzakiya@...>

You can do this:

23 messages 2008/06/08

[#304443] my first program just shuttin' down — Ruby Noob <john_@...>

Why? I tryin' to open the "hello.rb" program, but it just shuttin' down

12 messages 2008/06/08

[#304541] Ruby vs JRuby Performance — "Victor Reyes" <victor.reyes@...>

I knew that there was a penalty to be paid when running JRuby, but I did not

20 messages 2008/06/09

[#304623] Random Number Stuff — David Stanislaus <stanislaus_d@...>

How would you create a random number generator thats limited to a

17 messages 2008/06/10

[#304640] accessing class variables from the outside (beginner question) — progcat@...

I am still learning Ruby and I am trying to get something

12 messages 2008/06/10

[#304662] webby, ubuntu and gems — "Martin DeMello" <martindemello@...>

I've recently switched distributions to ubuntu, and I'm having

15 messages 2008/06/10

[#304728] Basic Tree Data Structure — Justin To <tekmc@...>

class Tree

14 messages 2008/06/10
[#304738] Re: Basic Tree Data Structure — Justin To <tekmc@...> 2008/06/10

class Tree

[#304790] Trie data structure — Justin To <tekmc@...>

I'm trying to implement a trie data structure for my parsing program

17 messages 2008/06/10
[#304826] Re: Trie data structure — Dave Bass <davebass@...> 2008/06/11

Justin To wrote:

[#304825] each with else — Thorsten Mler <thorsten@80beans.com>

Hi all,

11 messages 2008/06/11

[#304875] write byte array to file — "Rajesh Olafson" <rolafson@...>

Helo

16 messages 2008/06/11

[#304960] Help with Ruby under cygwin — James Byrne <byrnejb@...>

In order to use git on my laptop (MS XPproSP3) I ended up installing the

23 messages 2008/06/12

[#304992] a simple patch for the ri utility — Daniel Choi <dhchoi@...>

Hi everyone

15 messages 2008/06/12

[#305021] array to string conversion — Clement Ow <clement.ow@...>

Hi, I have 2 arrays(which is part of the hash):

13 messages 2008/06/13

[#305058] Circle Drawing (#166) — "Matthew Moss" <matthew.moss@...>

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

19 messages 2008/06/13

[#305100] Documenting Networking in Ruby. Any volunteer — "Victor Reyes" <victor.reyes@...>

Team,

10 messages 2008/06/13

[#305104] raise and rescue — Misiek Sz <nicpon@...>

Is is possible to raise an exception then rescue it and then go back to

13 messages 2008/06/13

[#305160] What was YOUR first Ruby Project — Eric Hegwer <ehegwer@...>

I though it be cool to hear what your first experience with Ruby was.

26 messages 2008/06/14

[#305227] why can't an instance instantiated within a class method access a protected instance method? — "Greg Hauptmann" <greg.hauptmann.ruby@...>

Hi,

10 messages 2008/06/15
[#305228] Re: why can't an instance instantiated within a class method access a protected instance method? — "Greg Hauptmann" <greg.hauptmann.ruby@...> 2008/06/15

(complete email)Hi,

[#305230] How !isset in Ruby — Alexey Tafintsev <alexey@...>

Hello people!

21 messages 2008/06/15
[#305238] Re: How !isset in Ruby — Martin Boese <boesemar@...> 2008/06/15

[#305241] Re: How !isset in Ruby — Robert Klemme <shortcutter@...> 2008/06/15

On 15.06.2008 14:37, Martin Boese wrote:

[#305268] little problem (google hiring puzzle) — ex <exeQtor@...>

Hi guys, I wonder if someone can find a pure ruby solution instead of

43 messages 2008/06/15

[#305334] How to Authenticate against the Windows NT Domain via Ruby — ChessMess <chessmess@...>

We are running a Rails application on Linux RedHat with a requirement

12 messages 2008/06/16

[#305377] print(true and true) #=> the parenthesis issue — hakunin <madfancier@...>

The parenthesis have been discussed before, but maybe this is another

31 messages 2008/06/17

[#305398] Can I find out the memory used by an object? — "Robert Hulme" <robert.hulme@...>

I'm 99% sure the answer to that question is no, but I thought I'd ask anyway :-)

15 messages 2008/06/17

[#305446] parsing text into usablle numerical data — Cthulhu __ <weedmasterp@...>

Hey total ruby n00b here...

13 messages 2008/06/17

[#305467] quick question about how array objects are handled — Chance Dinkins <chanceusc@...>

Btw, thanks in advance for any help - this community seems great!

11 messages 2008/06/17

[#305557] Rather validate values or use exceptions? — Joshua Muheim <forum@...>

Hi all

12 messages 2008/06/18

[#305605] Presentation on Ruby, require suggestions — "Srijayanth Sridhar" <srijayanth@...>

Hello,

14 messages 2008/06/19

[#305635] Why metaclasses? — "James Coglan" <jcoglan@...>

Hello all,

15 messages 2008/06/19

[#305727] Ruby 1.9.0/1.8.7/1.8.6/1.8.5 new releases (Security Fix) — Urabe Shyouhei <shyouhei@...>

Hi all.

91 messages 2008/06/20
[#305893] Re: Ruby 1.9.0/1.8.7/1.8.6/1.8.5 new releases (Security Fix) — Igal Koshevoy <igal@...> 2008/06/23

All versions of MRI Ruby that claim to fix the vulnerabilities are

[#305934] Re: Ruby 1.9.0/1.8.7/1.8.6/1.8.5 new releases (Security Fix) — Hongli Lai <hongli@...> 2008/06/23

Hi guys. Igal invited me to join this discussion.

[#305936] Re: Ruby 1.9.0/1.8.7/1.8.6/1.8.5 new releases (Security Fix) — Igal Koshevoy <igal@...> 2008/06/23

Hongli Lai wrote:

[#305943] Re: Ruby 1.9.0/1.8.7/1.8.6/1.8.5 new releases (Security Fix) — Hongli Lai <hongli@...> 2008/06/23

Igal Koshevoy wrote:

[#305956] Re: Ruby 1.9.0/1.8.7/1.8.6/1.8.5 new releases (Security Fix) — Igal Koshevoy <igal@...> 2008/06/23

Hongli Lai wrote:

[#306045] Re: Ruby 1.9.0/1.8.7/1.8.6/1.8.5 new releases (Security Fix) — Igal Koshevoy <igal@...> 2008/06/24

We have another potential winning solution!

[#306072] Re: Ruby 1.9.0/1.8.7/1.8.6/1.8.5 new releases (Security Fix) — Robert Thau <rst@...> 2008/06/24

Igal Koshevoy wrote:

[#306135] Re: Ruby 1.9.0/1.8.7/1.8.6/1.8.5 new releases (Security Fix) — Igal Koshevoy <igal@...> 2008/06/24

Robert Thau wrote:

[#306137] Re: Ruby 1.9.0/1.8.7/1.8.6/1.8.5 new releases (Security Fix) — "Dominic Sisneros" <dsisnero@...> 2008/06/25

Maybe you should try posting a issue on the new redmine bug tracker

[#306139] Re: Ruby 1.9.0/1.8.7/1.8.6/1.8.5 new releases (Security Fix) — Igal Koshevoy <igal@...> 2008/06/25

Dominic Sisneros wrote:

[#306214] Re: Ruby 1.9.0/1.8.7/1.8.6/1.8.5 new releases (Security Fix) — Jason Crystal <jcrystal@...> 2008/06/25

Just wanted to say that we all appreciate those fixes you guys have been

[#306516] Re: Ruby 1.9.0/1.8.7/1.8.6/1.8.5 new releases (Security Fix) — Cheri Anaclerio <canaclerio@...> 2008/06/29

Could somebody please explain how to apply the Smartleaf Stanislav and

[#307002] Re: Ruby 1.9.0/1.8.7/1.8.6/1.8.5 new releases (Security Fix) — Doug Alcorn <dougalcorn@...> 2008/07/02

Igal Koshevoy wrote:

[#305751] Regular expressions and long text — Guillermo.Acilu@...

Hello guys,

15 messages 2008/06/20

[#305810] Where does ruby excel? — Dolazy <francis.rammeloo@...>

I have only used ruby for writing little scripts. Things that are

14 messages 2008/06/21

[#305844] Initial release of amalgalite - v0.1.0 — Jeremy Hinegardner <jeremy@...>

Amalgalite embeds the SQLite database engine in a ruby extension.

13 messages 2008/06/21

[#305854] KABLAME! 0.2.1 Released — "Jacob Dunphy" <jacob.dunphy@...>

This is the first "announced release" of KABLAME!

13 messages 2008/06/22

[#305855] RubyGems 1.2.0 — Eric Hodel <drbrain@...7.net>

= Announce: RubyGems Release 1.2.0

49 messages 2008/06/22

[#305882] Is it ellegant to use a global variable to store a Logger object? — Iñaki Baz Castillo <ibc@...>

Hi, I use Logger class in a programm and since I need to log in lot of=20

49 messages 2008/06/22
[#305884] Re: Is it ellegant to use a global variable to store a Logger object? — Suraj Kurapati <snk@...> 2008/06/22

I単aki Baz Castillo wrote:

[#305885] Re: Is it ellegant to use a global variable to store a Logger object? — Iñaki Baz Castillo <ibc@...> 2008/06/22

El Lunes, 23 de Junio de 2008, Suraj Kurapati escribi=C3=B3:

[#305886] Re: Is it ellegant to use a global variable to store a Logger object? — Suraj Kurapati <snk@...> 2008/06/23

I単aki Baz Castillo wrote:

[#305888] Re: Is it ellegant to use a global variable to store a Logger object? — Iñaki Baz Castillo <ibc@...> 2008/06/23

El Lunes, 23 de Junio de 2008, Suraj Kurapati escribi=C3=B3:

[#306058] Re: Is it ellegant to use a global variable to store a Logger object? — Andrea Fazzi <andrea.fazzi@...> 2008/06/24

I単aki Baz Castillo ha scritto:

[#306066] Re: Is it ellegant to use a global variable to store a Logger object? — Iñaki Baz Castillo <ibc@...> 2008/06/24

El Martes, 24 de Junio de 2008, Andrea Fazzi escribi=C3=B3:

[#306161] Re: Is it ellegant to use a global variable to store a Logger object? — "Robert Klemme" <shortcutter@...> 2008/06/25

2008/6/24 I=F1aki Baz Castillo <ibc@aliax.net>:

[#306168] Re: Is it ellegant to use a global variable to store a Logger object? — "Robert Dober" <robert.dober@...> 2008/06/25

On Wed, Jun 25, 2008 at 11:22 AM, Robert Klemme

[#306176] Re: Is it ellegant to use a global variable to store a Logger object? — Andrea Fazzi <andrea.fazzi@...> 2008/06/25

Robert Dober ha scritto:

[#306180] Re: Is it ellegant to use a global variable to store a Logger object? — "Robert Dober" <robert.dober@...> 2008/06/25

On Wed, Jun 25, 2008 at 3:36 PM, Andrea Fazzi <andrea.fazzi@alca.le.it> wro=

[#306288] Re: Is it ellegant to use a global variable to store a Logger object? — "Shot (Piotr Szotkowski)" <shot@...> 2008/06/26

I=C3=B1aki Baz Castillo:

[#306351] Re: Is it ellegant to use a global variable to store a Logger object? — Iñaki Baz Castillo <ibc@...> 2008/06/26

El Jueves, 26 de Junio de 2008, Shot (Piotr Szotkowski) escribi=C3=B3:

[#306387] Re: Is it ellegant to use a global variable to store a Logger object? — "Shot (Piotr Szotkowski)" <shot@...> 2008/06/27

I=C3=B1aki Baz Castillo:

[#306416] Re: Is it ellegant to use a global variable to store a Logger object? — Iñaki Baz Castillo <ibc@...> 2008/06/27

El Viernes, 27 de Junio de 2008, Shot (Piotr Szotkowski) escribi=C3=B3:

[#306499] Re: Is it ellegant to use a global variable to store a Logger object? — "Shot (Piotr Szotkowski)" <shot@...> 2008/06/28

I=C3=B1aki Baz Castillo:

[#306501] Re: Is it ellegant to use a global variable to store a Logger object? — "ara.t.howard" <ara.t.howard@...> 2008/06/28

[#306085] Sequel primary keys — "Glen Holcomb" <damnbigman@...>

I posted to the Sequel Google Group but it's horribly slow, assuming it took

16 messages 2008/06/24

[#306088] Performance improvement possible? — Philip Rhoades <phil@...>

People,

35 messages 2008/06/24
[#306095] Re: Performance improvement possible? — Rob Biedenharn <Rob@...> 2008/06/24

On Jun 24, 2008, at 12:23 PM, Philip Rhoades wrote:

[#306225] Re: Performance improvement possible? — Philip Rhoades <phil@...> 2008/06/25

Rob,

[#306237] Re: Performance improvement possible? — Chuck Remes <cremes.devlist@...> 2008/06/26

[#306243] Re: Performance improvement possible? — Philip Rhoades <phil@...> 2008/06/26

Chuck,

[#306255] Re: Performance improvement possible? — Rob Biedenharn <Rob@...> 2008/06/26

On Jun 25, 2008, at 8:44 PM, Philip Rhoades wrote:

[#306333] Re: Performance improvement possible? — Eleanor McHugh <eleanor@...> 2008/06/26

On 26 Jun 2008, at 04:24, Rob Biedenharn wrote:

[#306345] Re: Performance improvement possible? — Philip Rhoades <phil@...> 2008/06/26

Eleanor,

[#306350] Re: Performance improvement possible? — Eleanor McHugh <eleanor@...> 2008/06/26

On 26 Jun 2008, at 20:47, Philip Rhoades wrote:

[#306357] Re: Performance improvement possible? — Philip Rhoades <phil@...> 2008/06/26

Ellie,

[#306368] Re: Performance improvement possible? — Eleanor McHugh <eleanor@...> 2008/06/27

On 26 Jun 2008, at 22:51, Philip Rhoades wrote:

[#306234] A cleaner way to pass a block or proc — "Tristin Davis" <tristin.colby@...>

Is there a cleaner way to implement my add_notifier method?

15 messages 2008/06/25
[#306236] Re: A cleaner way to pass a block or proc — Ben Bleything <ben@...> 2008/06/26

On Thu, Jun 26, 2008, Tristin Davis wrote:

[#306245] Re: A cleaner way to pass a block or proc — "Tristin Davis" <tristin.colby@...> 2008/06/26

Thanks Ben. That worked perfect. No other changes required in the class. :)

[#306331] question about defined? and y — Ruby Freak <twscannell@...>

The defined? keyword seems to have some funky behaviors.

19 messages 2008/06/26

[#306420] Statistician I (#167) — "Matthew Moss" <matthew.moss@...>

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

13 messages 2008/06/27

[#306448] changing the shebang of ruby files best way ? — unbewusst.sein@... (Une B騅ue)

I've a lot of ruby files (grabed from net) having a wrong shebang for my

18 messages 2008/06/27
[#306505] Re: changing the shebang of ruby files best way ? — Ryan Davis <ryand-ruby@...> 2008/06/28

[#306524] Random Generation of Characters — Tj Superfly <nonstickglue@...>

How could you generate a list of all possible combination's of lowercase

12 messages 2008/06/29

[#306533] mysterious memory corruption, very confused — Seebs <usenet-nospam@...>

ruby 1.8.7-p22, OS X 10.4.mumble, PostgreSQL 8.3.1, ruby-pg 2008-03-18.

11 messages 2008/06/29

[#306547] Recursive Logic - Examples and Resources? — Dan __ <major_general_joe@...>

Hey all,

13 messages 2008/06/29

[#306620] Threads and Ruby — barjunk <barjunk@...>

I've been hunting around for information regarding threads, and to me,

35 messages 2008/06/30
[#306621] Re: Threads and Ruby — "ara.t.howard" <ara.t.howard@...> 2008/06/30

[#306701] nested methods good or bad design — John Maclean <jayeola@...>

=begin

15 messages 2008/06/30

[#306728] how to - quickly make permutations? — Max Williams <toastkid.williams@...>

can anyone provide an elegant implementation for this method?

18 messages 2008/06/30
[#306761] Re: how to - quickly make permutations? — Frederick Cheung <frederick.cheung@...> 2008/06/30

[#306778] Re: how to - quickly make permutations? — "jim finucane" <jimrails@...> 2008/07/01

each new element tries to double the size of the list

Re: [QUIZ] Preferable Pairs (#165)

From: Steven Hahn <steverhahn@...>
Date: 2008-06-09 22:05:17 UTC
List: ruby-talk #304606
I made a couple of minor optimizations to my solution.  It still will not h=
andle large inputs, but it is a little better.  Thanks to Eric Ivancich, I =
removed some of the duplicate checks of potential solutions.  I hope I got =
them all.  Also, I added some memoization for values of solution sets, whic=
h has the downside of requiring more memory but seems to improve overall pe=
rformance.

-------------------------------------------------
require 'yaml'

#execute program by providing a file name with the data in YAML format
#Example YAML file contents:
#David: Helen Vicki Joseph
#Helen: David Vicki Joseph
#Joseph: Vicki Helen David
#Vicki: David Helen Joseph

class PairCalculator
  def initialize(filename)
    #read data into hash from YAML file
    @pairs_hash =3D YAML::load_file(filename)
    @num_people =3D @pairs_hash.length
    @num_choices =3D @num_people - 1
    @pair_set_value_hash =3D Hash.new
    @pair_value_hash =3D Hash.new
   =20
    #build array of all possible pairs
    @all_pairs =3D get_all_pairs
  end
=20
  #finds the nth choice of a person for some value n, 0 would be
  #the first choice, 1 second, etc.
  def get_nth_choice(person, n)
    @pairs_hash[person].scan(/\w+/)[n]
  end
=20
  #this method returns 0 if the pair is only one name
  #otherwise it looks up the pair value in a hash
  #preference indexes, 0=3Dbest, 1=3Dnext best, etc.
  def get_pair_value(pair)
    pair_array =3D pair.split(" ")
    return 0 if(pair_array.length=3D=3D1)
   =20
    #get the value from the pair value hash
    return @pair_value_hash[pair] + @pair_value_hash[pair_array[1] + " " + =
pair_array[0]]
  end

  #this method calculates the value of a possible solution of pairs
  def get_pair_set_val(pair_set)
    #check the hash first
    return @pair_set_value_hash[pair_set] if(@pair_set_value_hash.include?(=
pair_set))
   =20
    #not in the hash calculate it
    val =3D 0
    pair_set.each {|next_pair| val +=3D get_pair_value(next_pair)}
    @pair_set_value_hash[pair_set] =3D val
    return val
  end
=20
  #this method calculates a list of pairs from the pair array minus the
  #head_pair and any similar pairs (see similar? method for more details).
  def get_tail(pair_array, head_pair)
    tail_array =3D []
    pair_array.each do |next_pair|
      #remove all pairs with common partners
      tail_array +=3D [next_pair] unless(similar?(head_pair, next_pair))
    end
    return tail_array
  end
=20
  #pairs are considered similar if they share a common name or they
  #are both a single name (this case makes sure that only one single
  #name can be selected in any given solution
  def similar?(pair1, pair2)
    #returns true if they are both length of 1
    return true if(pair1.split(" ").length=3D=3D1 and
                  pair2.split(" ").length=3D=3D1)

    #returns true if the pairs have common partners
    pair1.split(" ").each do |next_name|
      if(pair2.include?(next_name))
        return true
      end
    end
    return false
  end

  #this method generates a list of all possible pairs
  def get_all_pairs
    all_pairs =3D []
    @pairs_hash.each_key do |p1|
      1.upto(@num_choices) do |cnt|
        #select the next person in the list
        p2 =3D get_nth_choice(p1, cnt-1)
       =20
        #add to all pairs list
        all_pairs +=3D [p1 + " " + p2] unless(all_pairs.include?(p2 + " " +=
 p1))
       =20
        #add to pair_value_hash for later lookup
        @pair_value_hash[p1 + " " + p2] =3D (cnt-1)**2
      end
      #add individual names if there are an odd number of people
      all_pairs +=3D [p1] if (@num_people & 1 =3D=3D 1)
    end
    return all_pairs
  end
=20
  #this method executes an exhaustive search of all pair sets for
  #each set it calculates the value with the best found up to that
  #point. if the value is lower then it saves the new solution.
  def get_preferred_pairs(pair_array=3D@all_pairs)
    solution =3D []
    solution_value =3D 1.0/0.0
    #base case: pair_array is empty
    if(pair_array.length=3D=3D0)
      return solution
    end
  =20
    #iterate over all pairs in the array use each one as the head
    #in a potential solution
    pair_array.each do |pair|
      #get the next potential solution
      pair_set =3D [pair] +
        get_preferred_pairs(get_tail(pair_array, pair)) #recursive call
      #calculate the value of the next potential solution
      pair_set_val =3D get_pair_set_val(pair_set)
      if(solution_value>pair_set_val)
        #better solution has been found... save it!
        solution =3D pair_set
        solution_value =3D pair_set_val
      end
    end
    return solution
  end
end

if(ARGV.length =3D=3D 0)
  puts "Usage: provide YAML file name as the argument."
  exit 0
end

t1 =3D Time.now
pc =3D PairCalculator.new("list.yaml")
pair_set =3D pc.get_preferred_pairs
pair_set.each {|pair| puts pair}
t2 =3D Time.now
puts "Pair set value: #{pc.get_pair_set_val(pair_set)} \nTime: #{t2 - t1}"


_________________________________________________________________
Instantly invite friends from Facebook and other social networks to join yo=
u on Windows Live=99 Messenger.
https://www.invite2messenger.net/im/?source=3DTXT_EML_WLH_InviteFriends=

In This Thread

Prev Next