Thread use to find max and min in an array of objects??

Hello everyone,
I need to find the min and max int value in a array of Objects.
This has to be done using threads--like divide the entire array into 10 or so blocks and find the local min and max in each block., Each block is run on a thread and finally comparing them to find the global max and min.How should I do this? I am new to Java programming and in particular to threads.
Thanks for your time and patience in answering this newbie question.
JP

Hi,
if i understand your problem, you have a big array with a lot of int values and you need to create a few arrays with a part of the big one in each, next each in a thread find the max and the min, next return the max and the min of each thread and compare these max and min to obtain the globals max and min?
In that case you can create a class in which is your big array. you create a second class implementing Runnable, in its creator you put the instance of the
first class and 2 int which are the beginning and the ending index. in this class add a method run in this method you create a loop to compare the current value to the max and min values, and you replace if you need to do. In the first class you put the main where you create a few instance of the second class in a thread :
     private Thread threadName = new Thread(new SecondClass(this, start, end));
Next you start all these thread:
threadName.start();
At the end of the run method of the second class you have to write your result in the max and min fields of the first class(int type, you have to create it)
Write it only if it's necessary (if the current max is > than the already existing max).
I think it's complete!
Sorry if it's not really easy to understand, I'm french, but you can answer if you have more questions.
S�bastien

Similar Messages

  • BEx Variables - Customer Exit - Find Max and Min of two values

    Hi Experts, I have two ID's at any given time in my InfoProvider. I'm trying to create two user exit variable on this ID. One should return the max of the two and the other should return only available one (i.e. the Min). The variable should not prompt the user for any value. Any time the variable is used in the report. max should the max of the two ID's and the Min should show the lower of the two values.
    I would appreciate if somebody could provide the code that I can use.

    you could use below:
    Variable for Max
    SELECT MAX ( ID Field )
    FROM <Source>
    INTO <wa_id>.
    Variable for Min
    SELECT MIN ( ID Field )
    FROM <Source>
    INTO <wa_id>.

  • Finding Max and Min values

    Hi Gurus,
    I have a table with one column as data type NUMC of lenth 5.
    Now, I have to get the max value and minimum value from that column into two variables of same type.
    Could you please help me with the logic and code in ABAP.
    Thanks,
    Regards,
    aarthi

    select single MAX( <field> ) from table into <variable>.
    select single MIN( <field> ) from table into <variable>.
    Message was edited by:
            S B

  • How to use select max and min query..

    hi gurus,
    we have got a custom report for develoment.
    the report has to fetch the max and min salarys department wise....
    how to pick up max & min sal ansal from table pa0008.

    Hi,
    Try the following
    select max(sal)
               min(sal)
               from <database table>
               into <internal table>
               group by department
               where <where condition>.
    Here we assume that sal is the field holding the salary and department is the name of the field in the database table. Where condition is optional.
    Hope this helps.
    Regards,
    Sachin

  • Line Profile Max and Mins

    Hi,
    I am trying to store the max and mins from a line profile that I generated from a picture into a spread sheet and also calculate the average max and min.  It seems like it should be a simple thing to do, but I can't seem to find an easy way to do it. 
    I just thought I would try to see if someone has done this before and can enlighten me!
    Thanks
    I am attaching a Line Profile Sample file is you want to use it to try your idea out.

    Hi BlueEyes76,
    What version of LabVIEW are you trying to do this in?
    In most versions of LabVIEW, if you go to Help->Find Examples and search "spreadsheet" you will see a number of VIs that read/write data from spreadsheet files.  Of particular interest may be the "Using Spreadsheet Format.vi".
    As for calculating max and min, there is a VI "Array Max and Min" in the Programming->Arrays function palette that will allow you to input an array of numbers and output the max and min.
    Please let me know if I can be of further assistance.
    Eric V
    National Instruments
    Applications Engineer
    Certified LabVIEW Associate Developer
    "I'm a Ramblin' Wreck from Georgia Tech and a helluva (NI Applications) Engineer!"

  • XY Graph-Setting Y-Scale visible to False still Shows Corresponding Y scale Max and Min

    Hi Guys,
    I use XY graph to display the data with 3 Y-scales.
    When I set any Y scale Visiblity property to False,its still display the Y scale Max and Min range Lines in plot area of the  Graph and making cross line or extra parralel line with other visible scales.
    Attached the screen shot  for ref.
    And I know the cross line may be due to different Y scales range setting.But XY graph should not display the invisible Y scales and its property  as well.
    please provide your suggestions to avoid that.
    Solved!
    Go to Solution.

    The scales and the lines associated with those scales are separate properties. I have never tried it, and right now I am not at a computer, but there should be properties for setting the grid line colors. Set them to transparent.
    Mike...
    Certified Professional Instructor
    Certified LabVIEW Architect
    LabVIEW Champion
    "... after all, He's not a tame lion..."
    Be thinking ahead and mark your dance card for NI Week 2015 now: TS 6139 - Object Oriented First Steps

  • How can i write max and min data online during acquisition

    Hello,
    I am not keen with programming and your help will be greatly appreciated.
    I make temperature acquisition from an IR camera and I record online 38 different spots at a frequency of 10 samples/min.
    I also record two temperatures from thermocouples at the same sampling rate.
    I would like to make the acquisition during 5 sec every 20 sec and extract the max and min temperature from the thermocouples and write these values in a text file like show below :
    Temp_max 5 sec 22.1
    Temp_min 5 sec 2.1
    Temp_max 10 sec 42.1
    Temp_min 10 sec 4.1
    Temp_max 15 sec 82.1
    Temp_min 15 sec 6.1
    I also would like to make the same with two or three different spots of the IR camera. I think that if I have a good solution for the thermocouple, I can make it for the camera.
    I use LabView 8.2 with NIDaqmx acquisition.
    Thank you in advance

    Hello Evrem,
    Thank you for your advice. In fact, I have already attended to the training course you mentioned. I should think about going to the module Basic II. I do not have problem to connect/pilot various type of instruments but I am not very efficient with loop and arrays !
    I am fine with the data acquisition and the timing and I can sort data during 5 sec with "Array max & min". Then, I can display all data. What I have problem to do is to extract the max & min from the array, keep these 2 values for being writtten in a file at the end of my loop and start again during the next 5-sec cycle. At present, I only have the last max & min results from the last acquisition !
    Any example of how recording max & min online during 5-sec cycle acquisition will be welcome.
    Best regards,
    Labdummy

  • Limit output max and min highlights and shadows via curves or levels or?

    Would like to be able to set a max and min output, say 252 RGB / 2 RGB so
    that no value outputs outside that range no matter what. Can do this in ACR
    with adjusting the endpoints of the curves, but this isn't available in LR.
    Using recovery to really pull down the highlights helps, but doesn't
    guarantee no clipping and affects a wider range of tones than just the
    endpoints.

    That sounds like the cpu overheat alarm. Your cpu may be overheating.  Clean all dirt/dust from the cpu heatsinf using canned air.  Also clean out the power supply with the canned air.  Reseat the hsf after cleaning all of the old thermal grease off it and the cpu.  Reapply a thin coating of new grease on the die of the cpu and then reseat the has, making certain to put it back on the correct way.

  • Cursor help and Max and min help

    hello I have a couple of simple questions on cursors.  I am gathering data from an oscilloscope to determine amplitude.  I would like to set a cursor for a reference point.  however, when I set the cursor to the specific number BEFORE the sweep takes place, the cursor gets erased and I have to reset it after.  Also, my x-axis goes from 0-240.  is their anyway to get a high precision?  When I input (154) for the position, it rounds up to 160 and its essential for me to keep as much precision as possible.  I attaching some pictures. 
    Another problem I am having is I want to gather the position where the max point is.  I need this position to subtract it from a reference point so I can determine how far I am from the desired reference point.  I am currently using the express VI statistics. 
    Attachments:
    Max and Min.JPG ‏162 KB
    Cursor Help.JPG ‏82 KB

    At the risk of sounding like a grumpy old man.
    Post you code please-  You have a lot of issues with your coding style and it might take a bit of work to help you out.  I'm not sure from your pictures where your question is pointing.
    Also please post .png files they are prefered on this forum.  And what LabVIEW version are you using?
    Jeff

  • Get max and min values from waveform chart

    Hi all
    Ive got a waveform chart and want to display the max and min value for the graph. How do i get the respective values?? Im using LabView 8.2
    holla
    Attachments:
    Untitled 231_LV80.vi ‏23 KB

    Thanks Mike

  • I am a rookie and need help with max and min values

    Hello all, i am into this intro to java class. my assignment is to write a program that prompts the user for two integers and then prints the sum, difference, average, product , distance (absolute value of the difference) Maximum(largest of the two) and Minimum(smallest fo the two) here is my code so far
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.lang.Math;
    public class Sample4
       public static void main(String[] args) throws IOException
          try // attempt the following
    {           // create the stream to read from
    InputStreamReader istream = new InputStreamReader(System.in);   // create a buffer to hold the stream
    BufferedReader console = new BufferedReader(istream);           // prompt the user
          System.out.println("Enter a number please");              // get input as a string
          String input = console.readLine();                        // convert to an integer
          int num1 = Integer.parseInt(input);
          System.out.println("Enter a number please");              // get input as a string
          String input2 = console.readLine();                       // convert to an integer
          int num2 = Integer.parseInt(input2);
          int sum = num1 + num2;                                    // get the sum of the two inputs
          int difference = num1 - num2;                             // get the difference of the two inputs
          int product = num1 * num2;                                // get the product of the two inputs
          int average = sum / 2;                                    // get the average of the two inputs
          int abs = Math.abs(difference);                           // get the absolute value of the two inputs
              // new section
                 // display the number
          System.out.println("The total sum = " + sum);
          System.out.println("The total difference = " + difference);
           System.out.println("The total product = " + product);
           System.out.println("The total average = " + average);
           System.out.println("The total absolute value = " + abs);
    } // if something breaks, catch the exception
    catch (IOException e)
       System.out.println(e); // displays the exception
       System.exit(1);  // quits the program
    }what will be the right syntax or code to find the MAX and MIN values of two numbers a User Inputs, hope someone can help with this. thank you for your help.

    Thanks alot man, sheesh i do not know why my book
    doesnt give me all the static methods. but i do really
    appreciate your help. peaceA complete list of the java.lang.Math methods can be found at http://java.sun.com/j2se/1.4/docs/api/java/lang/Math.html
    btw,
    max(a, b) == (a > b) ? a : b
    min(a, b) == (a < b) ? a : b

  • How to get Max and Min in one line .

    Hi Guys
    I know the program which I did is stupid .. I am getting the result for max and min value?
    But I how can I get the value of km, h, lit in one line
    Equno..max_date,min_date,min_value_km..max_value_km....min_value_h...max_value_h...min_value_l...max_value_l
    with my program i am getting the vlaue of max and min value but not in one line.
    the main parameter is recdu which is KM,L,H
    Can anyone tell me the logic please
    REPORT ZFUEL LINE-SIZE 200 LINE-COUNT 75
    NO STANDARD PAGE HEADING.
    TABLES : equi,
    equz,
    imptt,
    imrg,
    eqkt,
    iloa.
    Type Declaration
    TYPES: BEGIN OF ty_data ,
    equnr type equnr, " Euipment no
    eqktx type eqkt-eqktx, " Equipment Text
    eqfnr type iloa-eqfnr, " Equipment Sort field
    idate type imrg-idate, " Measuring Date
    recdu type imrg-recdu, " Unit of measuring ='KM','L','H'
    recdv type imrg-recdv, " Counter reading data
    END OF ty_data.
    TYPES: BEGIN OF ty_final,
    equnr type equnr, " Equipment no
    eqktx type eqkt-eqktx, " Equipment Text
    eqfnr type iloa-eqfnr, " Equipment Sort field
    min_date type imrg-idate, " Min Date
    min_km type p decimals 2, " Max Km
    max_km type p decimals 2, " Min km
    t_max_min_km type i, " Total min_km-max_km
    max_date type imrg-idate, " Max Date
    min_hr type imrg-recdv, " Max hr
    max_hr type imrg-recdv, " Min hr
    t_max_min_hr type i, " Total min_hr-max_hr
    min_lit type imrg-recdv, " Max lit
    max_lit type imrg-recdv, " Min lit
    t_max_min_lit type i, " Total min_lit-max_lit
    fuel_con type p decimals 2, " Total_hrs / t_max_min_hr
    km_l type p decimals 2, " km / L
    lit_per_hr type i , " fuel comsumed / t_max_min_hr
    END OF ty_final.
    DATA: i_data TYPE TABLE OF ty_data, " internal table
    wa_data TYPE ty_data, " work area
    i_final TYPE TABLE OF ty_final, " internal table
    wa_final TYPE ty_final. " work area
    data: begin of itab occurs 0,
    num type i,
    end of itab.
    data: v_min_1 type i,
    v_max_1 type i,
    min_km like imrg-recdv,
    max_km like imrg-recdv,
    min_l like imrg-recdv,
    max_l like imrg-recdv,
    max_dt like imrg-idate,
    min_dt like imrg-idate,
    t_ma_mi type p decimals 2,
    V1 LIKE IMRG-RECDV ,
    V2 LIKE IMRG-RECDV .
    SELECTION-SCREEN BEGIN OF BLOCK blk WITH FRAME.
    SELECTION-SCREEN BEGIN OF BLOCK blk1 WITH FRAME TITLE text-001.
    SELECT-OPTIONS: p_equnr FOR equi-equnr ,"no-extension no intervals,
    p_idate FOR imrg-idate. "NO-EXTENSION NO INTERVALS OBLIGATORY,
    "p_recdu FOR imrg-recdu NO-EXTENSION NO INTERVALS default 'KM' OBLIGATORY.
    SELECTION-SCREEN END OF BLOCK blk1.
    SELECTION-SCREEN BEGIN OF BLOCK blk2 WITH FRAME TITLE text-002.
    SELECTION-SCREEN END OF BLOCK blk2.
    SELECTION-SCREEN END OF BLOCK blk.
    TOP-OF-PAGE.
    FORMAT INTENSIFIED ON.
    WRITE:/1(40) ' INVESTMENT LIMITED '.
    WRITE:/50(40) ' FUEL CONSUMPTION REPORT ' CENTERED ,
    2 'Page', sy-pagno.
    FORMAT INTENSIFIED OFF.
    WRITE:/50(40) '----
    ' CENTERED .
    FORMAT INTENSIFIED ON.
    WRITE:/2 sy-datum COLOR 3, sy-uzeit .
    "WRITE:/1 S903-SPMON ."p_yearf.
    ULINE.
    "CENTERED.
    write: /2 'Date From :'.
    write: /2 'Equipment No :'.
    write: /2 'Unit :'.
    SKIP.
    ULINE.
    WRITE:/1 sy-vline,
    2 'EQUIP NO', 10 sy-vline,
    11 'NAME', 40 sy-vline,
    41 'min date', 50 sy-vline,
    51 'max date', 60 sy-vline,
    61 'min km', 70 sy-vline,
    71 'max km' , 80 sy-vline,
    81 't_max_min_km', 90 sy-vline,
    91 'min hr', 100 sy-vline,
    101 'max hr', 110 sy-vline,
    111 't_max_min_hr' , 120 sy-vline,
    121 'min lit', 130 sy-vline,
    131 'max lit', 140 sy-vline,
    141 't_max_min_lit', 150 sy-vline,
    151 'fuel con', 160 sy-vline,
    161 'km_l', 170 sy-vline,
    171 'lit_per_hr', 180 sy-vline.
    FORMAT COLOR 3 ON.
    ULINE.
    END-OF-PAGE.
    START-OF-SELECTION.
    select aequnr deqktx feqfnr eidate erecdu erecdv
    into table i_data
    from equi AS a
    inner join equz as b
    on aequnr = bequnr
    inner join iloa as f
    on biloan = filoan
    inner join imptt as c
    on aobjnr = cmpobj
    inner join eqkt as d
    on aequnr = dequnr
    inner join imrg as e
    on epoint = cpoint
    where a~equnr in p_equnr
    and
    e~idate in p_idate
    and
    e~recdu = 'KM'.
            SORT i_data BY equnr idate descending .
            loop at i_data into wa_data.
            max_km = wa_data-recdv.
            min_km = wa_data-recdv.
        at new equnr.
            read table i_data into wa_data index sy-tabix.
            write:/ wa_data-equnr, wa_data-eqktx ,wa_data-eqfnr ,wa_data-idate ,'MAX KM',max_km EXPONENT 0 DECIMALS 2 color 7,wa_data-recdu .
        endat.
    at end of equnr.
            read table i_data into wa_data index sy-tabix.
            write:/ wa_data-equnr, wa_data-eqktx ,wa_data-eqfnr ,wa_data-idate ,'MIN KM', min_km EXPONENT 0 DECIMALS 2 color 7, wa_data-recdu .
    endat.
    at end of equnr.
    write: / '----
    write: /50(80) 'Subtotal' COLOR 4 .
    write:/ '----
    endat.
    endloop.
    select aequnr deqktx feqfnr eidate erecdu erecdv
    into table i_data
    from equi AS a
    inner join equz as b
    on aequnr = bequnr
    inner join iloa as f
    on biloan = filoan
    inner join imptt as c
    on aobjnr = cmpobj
    inner join eqkt as d
    on aequnr = dequnr
    inner join imrg as e
    on epoint = cpoint
    where a~equnr in p_equnr
    and
    e~idate in p_idate
    and
    e~recdu = 'L'.
            SORT i_data BY equnr idate descending .
            loop at i_data into wa_data.
            max_km = wa_data-recdv.
            min_km = wa_data-recdv.
        at new equnr.
            read table i_data into wa_data index sy-tabix.
            write:/ wa_data-equnr, wa_data-eqktx ,wa_data-eqfnr ,wa_data-idate ,'MAX LIT',max_km EXPONENT 0 DECIMALS 2 color 7,wa_data-recdu .
        endat.
    at end of equnr.
            read table i_data into wa_data index sy-tabix.
            write:/ wa_data-equnr, wa_data-eqktx ,wa_data-eqfnr ,wa_data-idate ,'MIN LIT', min_km EXPONENT 0 DECIMALS 2 color 7, wa_data-recdu .
    endat.
    at end of equnr.
    write: / '----
    write: /50(80) 'Subtotal' COLOR 4 .
    write:/ '----
    endat.ENDLOOP.
    select aequnr deqktx feqfnr eidate erecdu erecdv
    into table i_data
    from equi AS a
    inner join equz as b
    on aequnr = bequnr
    inner join iloa as f
    on biloan = filoan
    inner join imptt as c
    on aobjnr = cmpobj
    inner join eqkt as d
    on aequnr = dequnr
    inner join imrg as e
    on epoint = cpoint
    where a~equnr in p_equnr
    and
    e~idate in p_idate
    and
    e~recdu = 'H'.
            SORT i_data BY equnr idate descending .
            loop at i_data into wa_data.
            max_km = wa_data-recdv.
            min_km = wa_data-recdv.
        at new equnr.
            read table i_data into wa_data index sy-tabix.
            write:/ wa_data-equnr, wa_data-eqktx ,wa_data-eqfnr ,wa_data-idate ,'MAX H',max_km EXPONENT 0 DECIMALS 2 color 7,wa_data-recdu .
        endat.
    at end of equnr.
            read table i_data into wa_data index sy-tabix.
            write:/ wa_data-equnr, wa_data-eqktx ,wa_data-eqfnr ,wa_data-idate ,'MIN H', min_h EXPONENT 0 DECIMALS 2 color 7, wa_data-recdu .
    endat.
    at end of equnr.
    write: / '----
    write: /50(80) 'Subtotal' COLOR 4 .
    write:/ '----
    endat.
    endloop.

    Hi Guys
    How can I split the max and min value with if condition for KM L AND H as below
    I am getting the km value correctly but rest fields for L and H (lit and hours) it is not ?
    Please comment.
    *APPEND wa_data to i_data.
            SORT i_data BY equnr idate descending .
            loop at i_data into wa_data.
            if wa_data-recdu = 'KM'.
            max_km = wa_data-recdv.
            min_km = wa_data-recdv.
            endif.
            if wa_data-recdu ='H'.
            max_h = wa_data-recdv.
            min_h = wa_data-recdv.
            endif.
            if wa_data-recdu ='L'.
            max_l = wa_data-recdv.
            min_l = wa_data-recdv.
           endif.
        at new equnr.
            read table i_data into wa_data index sy-tabix.
            write:/ wa_data-equnr, wa_data-eqktx ,wa_data-eqfnr ,wa_data-idate ,
            'Min KM',min_km EXPONENT 0 DECIMALS 2 color 7 ,
             'Min H',min_h EXPONENT 0 DECIMALS 2 color 7 ,
              'Min L',min_l EXPONENT 0 DECIMALS 2 color 7.
        endat.
    at end of equnr.
            read table i_data into wa_data index sy-tabix.
            write:/ wa_data-equnr, wa_data-eqktx ,wa_data-eqfnr ,wa_data-idate ,
            'Max KM', max_km EXPONENT 0 DECIMALS 2 color 7,
            'Max H', max_h EXPONENT 0 DECIMALS 2 color 7,
            'Max L', max_l EXPONENT 0 DECIMALS 2 color 7.
    endat.
    regards
    Piroz

  • Displaying actual Max and Min in the report header problem...

    Hi guys,
    I have the following problem.
    1. I have a multi select prompt where you pick 2 years.
    2. I have the following columns. Year, Month, Exp, calc YEAR (max), calc year (min)
    3. I need to get the max and min month across all rows. So far I've tried MAX, MIN, RMAX, and RMIN without success. However, it's not picking them along all rows. For example,
    2001 1 100050 2001 2001
    2002 1 244005 2002 2002
    I'm sure this has to do something with my aggregation in the calculated column, but not quite sure where exactly.

    do max(max(year)) and min(min(year))
    :)

  • How to get max and min salary in a table

    How to get max and min salary in a table

    SQL> select max(sal),min(sal) from emp;
      MAX(SAL)   MIN(SAL)
          5512        800
    SQL>

  • How to get max and min of a varchar2

    there is a column clothes_size in table_1 where i need to get the max and min..how can i get the actual max and min if its datatype is varchar2(50) and not number..how can i do this so that once i have 2 or more clothes_size values returned i will only get the smallest or the largest. i assigned number values on each field and whats next??? any suggestion?
    clothes_size
    XS                1
    S                2
    M                3
    L                4
    XL                5
    XXL                6

    Examples of this approach:
    select min(cloth_size_2) min_size
         , max(cloth_size_2) max_size
      from (select case when cloth_size = 'XS' then 1
                        when cloth_size = 'S' then 2
                        when cloth_size = 'M' then 3
                        when cloth_size = 'L' then 4
                        when cloth_size = 'XL' then 5
                        when cloth_size = 'XXL' then 6
                   end as cloth_size_2
              from your_table);
    <br>
    select min(cloth_size_2) min_size
         , max(cloth_size_2) max_size
      from (select decode(cloth_size
                         , 'XS', 1
                         , 'S', 2
                         , 'M', 3
                         , 'L', 4
                         , 'XL', 5
                         , 'XXL', 6) cloth_size_2
              from your_table);

Maybe you are looking for