Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #9085

Re: Getter performance

Date 2011-10-22 07:27 +0100
From Patricia Shanahan <pats@acm.org>
Newsgroups comp.lang.java.programmer
Subject Re: Getter performance
References (3 earlier) <j7cvqo$tcp$1@news.albasani.net> <j7d0v7$eo5$1@dont-email.me> <KeYnq.9220$wa5.7836@newsfe17.iad> <lfo3a75gk7h46q1csvk6k6jrks9qce80ni@4ax.com> <rqpoq.6270$UK6.64@newsfe06.iad>
Message-ID <pemdnXtu9MKv_z_TnZ2dnUVZ_uadnZ2d@earthlink.com> (permalink)

Show all headers | View raw


Daniel Pitts wrote:
> On 10/21/11 2:27 PM, Roedy Green wrote:
>> I think you should know without benchmarking each individual case
>> which Map or Collection would be best for a given task.
> I nearly agree.
> 
> An experienced programmer should know which Map or Collection would work 
> sufficiently well for a given task.  "Best", by some definitions, would 
> almost always be a custom class (perhaps not even implementing Map or 
> Collection).  The thing is that best may be much better than needed.

Also, even between two algorithms, "best" may require a lot of
experiments, and be machine dependent.

For example, consider binary vs. linear search of a sequential array.
Binary search does O(log n) comparisons, but with unpredictable
conditional branches leading to a high cost per branch. Linear search
does O(n) comparisons, but most of its conditional branches go the same
way, making them relatively cheap.

They are of about equal coding cost, because Arrays has methods to do
binary search, and linear search is extremely simple.

For very short arrays I would definitely use linear search. For very
large arrays I would definitely use binary search. How about an array
length 100? Which is faster?

I think either would be "sufficiently good" except in very rare
conditions. If I had a program with a performance bottleneck on a search
of a length 100 array, I would measure in the context of that program.

Patricia

Back to comp.lang.java.programmer | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Getter performance Aéris <aeris@imirhil.fr> - 2011-10-15 23:03 +0200
  Re: Getter performance Arne Vajhøj <arne@vajhoej.dk> - 2011-10-15 17:36 -0400
    Re: Getter performance Arne Vajhøj <arne@vajhoej.dk> - 2011-10-15 17:42 -0400
      Re: Getter performance BGB <cr88192@hotmail.com> - 2011-10-15 15:00 -0700
        Re: Getter performance markspace <-@.> - 2011-10-15 15:20 -0700
          Re: Getter performance David Lamb <dalamb@cs.queensu.ca> - 2011-10-20 12:45 -0400
            Re: Getter performance Roedy Green <see_website@mindprod.com.invalid> - 2011-10-21 14:27 -0700
              Re: Getter performance Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2011-10-21 18:57 -0700
                Re: Getter performance Patricia Shanahan <pats@acm.org> - 2011-10-22 07:27 +0100
                Re: Getter performance Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2011-10-22 09:57 -0300
              Re: Getter performance Eric Sosman <esosman@ieee-dot-org.invalid> - 2011-10-21 22:12 -0400
    Re: Getter performance Aéris <aeris@imirhil.fr> - 2011-10-15 23:59 +0200
      Re: Getter performance Arne Vajhøj <arne@vajhoej.dk> - 2011-10-15 19:44 -0400
        Re: Getter performance Aéris <aeris@imirhil.fr> - 2011-10-16 13:14 +0200
          Re: Getter performance Lars Enderin <lars.enderin@telia.com> - 2011-10-16 16:28 +0200
  Re: Getter performance Eric Sosman <esosman@ieee-dot-org.invalid> - 2011-10-16 09:47 -0400
  Re: Getter performance Jaap Droogers <JaapDroogers@unusable.meel.homelinux.net> - 2011-10-16 22:12 +0200
    Re: Getter performance BGB <cr88192@hotmail.com> - 2011-10-16 13:58 -0700
    Re: Getter performance David Lamb <dalamb@cs.queensu.ca> - 2011-10-20 12:51 -0400
      Re: Getter performance Paul Cager <paul.cager@googlemail.com> - 2011-10-21 08:49 -0700
  Re: Getter performance Roedy Green <see_website@mindprod.com.invalid> - 2011-10-21 08:02 -0700
  Re: Getter performance Wanja Gayk <brixomatic@yahoo.com> - 2011-10-22 21:11 +0200

csiph-web