इसलिए मैंने मुझे एक सरणी के लिए सबसे छोटे तत्व की सबसे छोटी अनुक्रमणिका देने के लिए कोड लिखा है जिसका अर्थ है कि यदि मेरे सरणी में युगल हैं तो यह मुझे उदाहरण के लिए सबसे छोटी अनुक्रमणिका वाला एक देगा:

myList = {1,3,1,4,5,5}; कोड चलाते समय यह मुझे 0 की अनुक्रमणिका देगा न कि 2

मुझे क्या करने में परेशानी हो रही है इस कोड को 2d सरणी के लिए परिवर्तित कर रहा है?

मेरा कोड:

public static int indexSmall(int[] array)
{
    int index = 0;
    int low = array[index];
    for(int i = 0; i < array.length; i++)
    {
        if (low > array[i])
        {
            low = array[i];
            index = i;
        }
    }

    return index;
}
-1
JRendon 14 मार्च 2016, 04:08
मुझे लगता है कि आपको index = i; के बाद बस एक break; की जरूरत है
 – 
Narain Mittal
14 मार्च 2016, 04:12
4
आप इसे 2D सरणी में कैसे लागू करना चाहते हैं? आपको क्या "परेशानी" हो रही है?
 – 
shmosel
14 मार्च 2016, 04:12
2 डी सरणी? तो क्या आप कहेंगे arr[1][5] एक छोटी अनुक्रमणिका है या arr[5][1] ?
 – 
Renuka Deshmukh
14 मार्च 2016, 04:14
2
हाँ, आप 2D सरणी की सबसे छोटी अनुक्रमणिका कैसे निर्धारित करते हैं? क्या 0,2 2,0 से छोटा है? 1,1 के बारे में क्या?
 – 
markspace
14 मार्च 2016, 04:14
हम ऐसा कह सकते हैं, लेकिन यह कुछ भी स्पष्ट नहीं करता है। सरणी {{2,1},{1,2}} में, "सबसे छोटा" सूचकांक कौन सा है?
 – 
Sneftel
14 मार्च 2016, 04:21

1 उत्तर

सबसे बढ़िया उत्तर

मूल रूप से वही बात है लेकिन आपको पंक्ति और कॉलम इंडेक्स का ट्रैक रखने के लिए दो चर का उपयोग करना होगा क्योंकि यह अब 2 डी सरणी में एक इंडेक्स नहीं है जिसे आप ढूंढ रहे हैं। आप जो वापस करना चाहते हैं वह इस बिंदु पर आप पर निर्भर है।

public static int indexSmall(int[] array)
{
    int row = 0;
    int col = 0;
    int low = array[row][col];
    for(int i = 0; i < array.length; i++) //array.length is the number of 
                                          //arrays in the 2D array aka the number of rows
    {
        for(int j = 0; j < array[i].length; j++) //array[i].length is the number of elements
                                                 //in one of the arrays in the 2D arrays aka 
                                                 //the number of columns
            {
            if (low > array[i][j])
            {
                low = array[i][j];
                row = i;
                col = j
            }
        }
    }

    return row; //you can also return col or a combination of the two
}
1
Chris Gong 14 मार्च 2016, 04:36