Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.java.help > #1122
| From | "Charles Hottel" <chottel@earthlink.net> |
|---|---|
| Newsgroups | comp.lang.java.help |
| References | (2 earlier) <822p77tjmlsdrp2r7so1ko70igu9fascn6@4ax.com> <u-CdnSQgGqDnC-HTnZ2dnUVZ_rOdnZ2d@earthlink.com> <e9ap771g34045ad5tda2mp36imru521ks9@4ax.com> <Kd6dnbo1BNGUJuHTnZ2dnUVZ_s6dnZ2d@earthlink.com> <j5np771d6gjjdo1m1cj43fo4e6s3lknb1f@4ax.com> |
| Subject | Re: How to sort String array A based on int array B |
| Date | 2011-09-23 17:42 -0400 |
| Message-ID | <5PmdnbXtmIHNYOHTnZ2dnUVZ_vCdnZ2d@earthlink.com> (permalink) |
"Thee Chicago Wolf [MVP]" <.@.> wrote in message news:j5np771d6gjjdo1m1cj43fo4e6s3lknb1f@4ax.com... > >On 9/23/2011 8:51 AM, Thee Chicago Wolf [MVP] wrote: >>>> On 9/23/2011 6:51 AM, Thee Chicago Wolf [MVP] wrote: >>>>>> On 9/22/2011 12:31 PM, Thee Chicago Wolf [MVP] wrote: >>>>>> >>>>>>> The trouble I am having is sorting array B based on array A. >>>>>> >>>>>> >>>>>> I don't doubt that. I'm having trouble understanding what "based on" >>>>>> means here. Can you elaborate? What actual operation do you want to >>>>>> preform on A and B, based on what criteria? >>>>> >>>>> Ok, after reading my post I can see that I was not quite as clear as I >>>>> could have been. >>>>> >>>>> So I have two arrays: A and B. Array A is an int array (I think I had >>>>> it backwards in my original description) and array B is a String >>>>> array. Array A is already ordered from 1 - 6 in ascending order and is >>>>> basically a rank order with 1 being most popular, 2 = less popular >>>>> than 1, 3 = less so than 2, etc. Array B is the artist info, >>>>> scrambled, but each artist is defined by their appropriate popularity >>>>> with a #_ naming convention preceding the artist name and song title. >>>>> I figured that array B had to have some defining characteristic about >>>>> it else there would be no way to order a bunch of String info to a >>>>> corresponding rank without knowing the current artist ranking. >>>> >>>> You say "I figured" so presumably that part of the description is not >>>> an >>>> explicit part of the original problem definition. How confident are you >>>> that B should contain ranking information? If it does, the array A >>>> seems >>>> superfluous, and the problem is simply one of sorting B. >>>> >>>> There are alternative interpretations of the rest of your comments that >>>> would give meaning to both arrays. >>> >>> Here is the original requirement: >>> >>> Modify any of the sort algorithms to sort a secondary array B based on >>> the sorting order of A (that is akin to say: sort the titles of the >>> songs (B) based on their rank (A). >>> >>> I chose to add Artist info in addition to song title. This is why I >>> specifically added the #_ (read as number underscore) to the String >>> array else I figured there was no easy way to sort them based on a >>> rank. Meaning, you can't compare an int to a String. In my mind, I >>> thought that adding the #_ to the beginning of the String item would >>> make it easier to sort it. Does that make sense? >> >>Generally, adding your own features to a program before doing what is >>actually required is a very bad mistake. First get what is needed >>working, and have that version available to turn in. If you have time >>later, and want to get some more programming practice, add your own >>features. >> >>The way I would interpret the original requirement is that B contains >>the song titles, and absolutely nothing but the song titles. No numbers >>- unless they are part of the song title, no underscore, no artist >>information. A[i] is the rank of B[i]. That is, if B[i] is the highest >>rated title, A[i] is 1. If B[i] is the lowest rated of six titles then >>A[i] is 6. >> >>In this interpretation there is no need to compare an int to a String, >>only to compare an int to another int. > > Maybe I am missing the gist here but I would still be comparing an int > to a String, not int to int. B[i] will be a bunch of song titles that > would be of type String. You're not saying compare index to index, > right? > >>I'll give you a couple of hints: >> >>1. Maintain the relationship between A and B as an invariant during the >>sort. >> >>2. At the end of the sort, A will be in ascending value order if you >>want highest rank, lowest rank number, title first. > > Nothing in A[] should be changing as those values are static, only the > order of the titles in B[] should be sorted based on the defined order > of what's in A[]. > > - Thee Chicago Wolf [MVP] Are you certain that the integer values in the A array are already in sort order? My intuition is that they are not and that you must sort them. In the process of sorting them the elements in the A array will change or swap their position. Every time this happens your code must swap the corresponding elements in the B array. This will keep the A and B arrays in synchronization. If my intuition is wrong then I do not understand you problem as explained thus far.
Back to comp.lang.java.help | Previous | Next — Previous in thread | Next in thread | Find similar
How to sort String array A based on int array B "Thee Chicago Wolf [MVP]" <.@.> - 2011-09-22 14:31 -0500
Re: How to sort String array A based on int array B markspace <-@.> - 2011-09-22 15:38 -0700
Re: How to sort String array A based on int array B "Thee Chicago Wolf [MVP]" <.@.> - 2011-09-23 08:51 -0500
Re: How to sort String array A based on int array B Patricia Shanahan <pats@acm.org> - 2011-09-23 07:23 -0700
Re: How to sort String array A based on int array B "Thee Chicago Wolf [MVP]" <.@.> - 2011-09-23 10:51 -0500
Re: How to sort String array A based on int array B Patricia Shanahan <pats@acm.org> - 2011-09-23 09:59 -0700
Re: How to sort String array A based on int array B "Thee Chicago Wolf [MVP]" <.@.> - 2011-09-23 14:31 -0500
Re: How to sort String array A based on int array B Patricia Shanahan <pats@acm.org> - 2011-09-23 12:39 -0700
Re: How to sort String array A based on int array B "Charles Hottel" <chottel@earthlink.net> - 2011-09-23 17:42 -0400
Re: How to sort String array A based on int array B "Thee Chicago Wolf (MVP)" <.@.> - 2011-09-23 20:27 -0500
Re: How to sort String array A based on int array B Patricia Shanahan <pats@acm.org> - 2011-09-23 18:39 -0700
Re: How to sort String array A based on int array B "Thee Chicago Wolf (MVP)" <.@.> - 2011-09-26 08:37 -0500
Re: How to sort String array A based on int array B Patricia Shanahan <pats@acm.org> - 2011-09-26 08:04 -0700
Re: How to sort String array A based on int array B "Thee Chicago Wolf [MVP]" <.@.> - 2011-09-27 13:47 -0500
Re: How to sort String array A based on int array B "Thee Chicago Wolf [MVP]" <.@.> - 2011-09-27 13:59 -0500
Re: How to sort String array A based on int array B Lew <lewbloch@gmail.com> - 2011-09-27 12:25 -0700
Re: How to sort String array A based on int array B Lew <lewbloch@gmail.com> - 2011-09-26 09:00 -0700
Re: How to sort String array A based on int array B "Charles Hottel" <chottel@earthlink.net> - 2011-09-23 23:31 -0400
Re: How to sort String array A based on int array B "Thee Chicago Wolf (MVP)" <.@.> - 2011-09-26 08:29 -0500
Re: How to sort String array A based on int array B Eric Sosman <esosman@ieee-dot-org.invalid> - 2011-09-22 22:28 -0400
Re: How to sort String array A based on int array B "Thee Chicago Wolf [MVP]" <.@.> - 2011-09-23 09:13 -0500
Re: How to sort String array A based on int array B Eric Sosman <esosman@ieee-dot-org.invalid> - 2011-09-23 20:45 -0400
Re: How to sort String array A based on int array B Roedy Green <see_website@mindprod.com.invalid> - 2011-09-23 02:28 -0700
Re: How to sort String array A based on int array B "Thee Chicago Wolf [MVP]" <.@.> - 2011-09-23 09:14 -0500
Re: How to sort String array A based on int array B Roedy Green <see_website@mindprod.com.invalid> - 2011-09-25 00:46 -0700
csiph-web