Loading ...
Sorry, an error occurred while loading the content.

Have we got a numeric sort yet?

Expand Messages
  • Paul
    I want to sort an array of numbers primarily for the purpose of deleting duplicates, so it s okay to treat as strings of numeric characters. e.g. ^!SetArray
    Message 1 of 32 , Oct 24, 2010
    • 0 Attachment
      I want to sort an array of numbers primarily for the purpose of deleting duplicates, so it's okay to treat as strings of numeric characters.

      e.g. ^!SetArray %myarray%=5;2;4;6;2;43;4

      if i end up with 5;2;4;6;43 then that helps (de-duped).
      Ordered from highest to lowest would be an advantage.

      Should this line work:

      ^!Info ^$StrSort(^%myarray%;No;Yes;Yes)$
      or
      ^!SetArray %MySortedArray%=^$StrSort(^%myarray%;No;Yes;Yes)$

      More importantly, why doesn't it! How to fix it?

      Additional info: %myarray% may be very long. the numbers in myarray are usually less than 20 although at a stretch could be up to 100. The numbers in the array need to be used for subsequent ^$Calc operations referenced by index, e.g. ^%MySortedArray3% (=4)

      Because ^$StrSort("^$GetClipboard$";False;True;True)$ DOES work how do you iteratively write sequential lines to the clipboard?

      Regards,
      Paul
    • Paul
      ... I m still impressed how quick clips run. Reminds me of writing good old Advanced Basic code running on an XT. You know, a 5.1 gogigahertz machine still
      Message 32 of 32 , Dec 1, 2010
      • 0 Attachment
        --- In ntb-clips@yahoogroups.com, "Eb" <ebbtidalflats@...> wrote:
        >... NoteTab is an interpreter, not a compiler. That means any complex algorithm you build in clip code is going to be much slower, than it would be as a compiled (built-in) function.

        I'm still impressed how quick clips run. Reminds me of writing good old Advanced Basic code running on an XT. You know, a 5.1 gogigahertz machine still processes a spreadsheet about as fast as it used to!

        > Bubble sort requires (n squared) iterations in the worst-case scenario.

        That sounds better. Thanks for the reminder.

        > On the other hand, it might be a good exercise to code in clip code. <grin>Just for comparison</grin>.

        Gone are the days of the lazy uni student where time was a misspent luxury... <sigh> ... although I can't complain.. I had an entire half a Sunday to sit and relax this week. :)

        My current project needed a 'calculate by hand' style multiplication routine to handle ridiculously large numbers. To be honest, I don't mind the 7 seconds it takes to multiply two - one hundred digit -numbers.

        Fascinating really and the exciting bit is that we seem to have come full circle and once again the computer is doing exactly what the user wants... without the OOP, "compiler declares headache" syndrome. <smile> </b>

        Cheers,
        Paul
      Your message has been successfully submitted and would be delivered to recipients shortly.