アルゴリズムの質問Javaで一般的に使用されるライブラリ関数

アルゴリズムの質問Javaで一般的に使用されるライブラリ関数

  • 文字列
    整数から文字列:
String str = String.valueOf(a);

配列への文字列

 char[] chars = str.toCharArray();

文字列の長さ:

int lenght = str.length();

文字列から文字を取得します。

char c = str.charAt(i);

文字列の置換

str.replace('a','b');

文字列はスペースを削除します

str.trim();

ストリングスプライシング

StringBuilder sb = new StringBuilder();
sb.append(a);
sb.length(a);
sb.deleteCharAt(index);

インターセプト文字列:

str.substring(start,end) 含前不含后,也可以只有
str.substring(start)

文字の位置を取得するための文字列

str.indexOf('a')

文字列のセグメンテーション

str.split("\\s+");按空格分割

リスト/両端キューが文字列に再編成されました

String.join("",list);
String.join("",deque);
  • 配列
    配列の初期化:
char[] array = new char[len];
int[] arr = {
    
    1,2,3};
int[] arr = new int[]{
    
    1,2,3,4,5,6};

配列の長さ:

int length = arr.length;

配列コピー:

T[] target = Arrays.copyOfRange(T[] original,int start,int to)
含前不含后
public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)

src:源数组;

srcPos:源数组要复制的起始位置;

dest:目的数组;

destPos:目的数组放置的起始位置;

length:复制的长度.

配列のカスタムソート:

Arrays.sort(nums,new Comparator<Integer>(){
    
    
	public int compare(Integer a,Integer b){
    
    
		return b-a;
	}
});

リストする配列

(1)ArrayList<String> arrayList = new ArrayList<String>(Arrays.asList(arrays));
(2)List<String> list = Arrays.asList(arrays);
(3)List<String> list2 = new ArrayList<String>(arrays.length);
Collections.addAll(list2,arrays);

配列は要素に基づいて位置を見つけます

int positon = Arrays.binarySearch(arrays, "f");  

配列の要素を埋める

 Arrays.fill(array, Integer.MAX_VALUE);

  • パッケージタイプに変換されたリスト関連の基本タイプ配列リスト:
int[] nums = {
    
    1,2,3};
Arrays.stream(nums).boxed().collect(Collectors.toList());

リストから配列へ(リストメンバーにのみ適用できるのはラッパータイプです)

String[] strs = list.toArray(new String[list.size()])

リストコピー

targetList.addAll(sourceList);

カスタムソートを一覧表示

Collections.sort(list,new Comparator<Integer>(){
    
    
	@override
	public int compare(Integer o1,Integer o2){
    
    
		return o1-o2;
	}
})

リストフリップ

Collections.reverse(list);

リストは位置によって要素を削除します

list.remove(index);

リストは位置ごとに要素を取得します

list.get(index);

要素の位置を取得するためのリスト

list.indexOf(value) 默认返回第一个元素所在的位置

リストに要素を追加

list.add(value)在队尾添加
list.add(place,value);//在指定位置添加
  • スタック
    スタックの初期化
Stack stack = new Stack();

スタック挿入要素

stack.push();

スタックから要素をポップします

stack.pop();

スタックは、要素を削除せずにスタックの最上位の要素を取得します

stack.peek();

スタックが空かどうかを確認します

stack.isEmpty()
  • キュー
Queue<String> queue = new LinkedList<String>();

キュー挿入要素

queue.offer(element);

キューポップ要素

queue.poll();

キュー要素の先頭

queue.peek();
  • Dequedequeの
    初期化
Deque<String> d = new ArrayDeque<String>();

dequeの先頭に要素を挿入します

d.offerFirst(ele);

dequeの最後に要素を挿入します

d.offer()
d.offerLast()

dequeの先頭にあるポップアップ要素

deque.pollFirst();
deque.poll();

dequeの最後にあるポップアップ要素

deque.pollLast()
  • 地図
            groupItemsMap.computeIfAbsent(group[item],key->new ArrayList<Integer>()).add(item);

  • 関数
Math.max(a,b);
Math.min(a,b);
Math.pow(a,digit);
Random random = new Random();
random.nextInt(2);返回0/1
  • 予備の

おすすめ

転載: blog.csdn.net/weixin_38813363/article/details/113624059