데이터 구조의 배열 편

4592 단어 데이터 구조
연속 하위 배열 의 최대 합
제목 설명
HZ 는 가끔 전문 적 인 문 제 를 가지 고 컴퓨터 학과 가 아 닌 친구 들 을 속인다.오늘 테스트 팀 이 회 의 를 마 친 후에 그 는 또 말 했다. 오래된 1 차원 모델 인식 에서 연속 적 인 서브 벡터 의 최대 와 벡터 가 모두 양수 일 때 문 제 는 잘 해결 된다.그러나 벡터 에 마이너스 가 포함 되 어 있다 면 어떤 음 수 를 포함해 야 하 며 옆 에 있 는 정수 가 보완 되 기 를 기대 해 야 하 는가?예 를 들 어 {6, - 3, - 2, 7, - 15, 1, 2, 2}, 연속 자 벡터 의 최대 합 은 8 (0 번 부터 3 번 까지) 이다.너 는 그 에 게 속 는 것 이 아니 냐?
코드 구현
public class Solution {
    public int FindGreatestSumOfSubArray(int[] array) {

        if(array==null||array.length==0)
            return 0;

        int presum=0;//       。
        int maxsum=array[0];//         
        int maxcount=array[0];//        ,      
        for(int i=0;i<array.length;i++){

            presum+=array[i];

            if(array[i]>maxcount)
                maxcount=array[i];

            if(presum<0)
                presum=0;

            if(presum>maxsum)
                maxsum=presum;

        }
        if(maxsum==0)
            return maxcount;
        else
            return maxsum;
    }
}

배열 을 가장 작은 수로 배열 하 다.
제목 설명
정수 배열 을 입력 하고 배열 의 모든 숫자 를 연결 하여 하나의 숫자 로 배열 하 며 연결 할 수 있 는 모든 숫자 중 가장 작은 숫자 를 인쇄 합 니 다.예 를 들 어 배열 {3, 32, 321} 을 입력 하면 이 세 숫자 가 배열 할 수 있 는 최소 숫자 는 321323 이다.
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
public class Solution {
    public static String PrintMinNumber(int [] numbers) {

            ArrayList<String> list=new ArrayList<String>();

            String result="";

            for(int i=0;i<numbers.length;i++){

                String str=String.valueOf(numbers[i]);
                list.add(str);
            }
            Collections.sort(list, new Comparator<String>() {

                /** *    ,         * @param a * @param b * @return */

                public int compare(String a, String b) {
                    String str1=a+b;//  
                    String str2=b+a;
                    return str1.compareTo(str2);
                }
            });

            for(String str:list){
                result+=str;
            }
            return result;
        }
}

최소 k 개 찾기
값 을 정 하 는 두 개의 수 를 찾다.
정 해진 값 의 여러 개 수 를 찾 습 니 다.
배열 의 최 장 증가 서브 시퀀스 를 구하 십시오.

좋은 웹페이지 즐겨찾기