Java刷题常用的数据结构总结(java刷题常用函数)

  本篇文章为你整理了Java刷题常用的数据结构总结(java刷题常用函数)的详细内容,包含有java最好的刷题工具 java刷题常用函数 java刷题app java刷题网站有哪些 Java刷题常用的数据结构总结,希望能帮助你了解 Java刷题常用的数据结构总结。

   本文主要介绍了在java刷题的过程中常用的数据结构和常用的内置函数,适合新手入门使用。

  
 

  目录1. 基础运算2. 字符串类3. 数组类与链表4. 栈和队列5. 字典类6. 树

  1. 基础运算

  

//int型相关操作

 

  Integer.INT_MAX;//int型最大值

  Integer.INT_MIN;//int型最小值

  long name;//注意:没有c语言里面的long long

  (int)n1%(int)n2;//取余运算,针对int型,如果运算数不是int型要注意类型转换

  

 

  2. 字符串类

  

//String

 

  String s_name = "";//定义一个空字符串

  String s=String.valueOf(int);//int型转字符串s

  String.length();//获得字符串长度

  String.charAt(index);//获得字符串中下标index的字符

  string.toCharArray(str);//将字符串转化为字符型数组

  String.substring(start_index,end_index);//获取字符串的子串,范围是[start_index,end_index);

  String1 + String2;//两个字符串进行拼接

  string1.concat(string2);//两个字符串进行拼接

  /*注意:String 类是不可改变的,所以你一旦创建了 String 对象,那它的值就无法改变了

  因此String的“+”拼接效率低下,因为需要创建StringBuilder或者StringBuffer对象来实现

  //字符串遍历方法一

  for(char c:string.toCharArray()){}

  //字符串遍历方法二

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

   string.charAt(i);

  //StringBuffer

  StringBuffer Name=new StringBuffer();//声明一个StringBuffer类型的变量

  StringBuffer.append(ch);//在尾部添加字符

  StringBuffer.toString();//将StringBuffer转为String类型

  //StringBuilder相关操作

  StringBuilder Name=new StringBuilder();//定义一个空字符串

  StringBuilder.append(char/String);//将字符或者字符串添加到字符串中

  StringBuilder.toString();//将StringBuilder类型转化为String类型

  StringBuilder.reverse();//将字符串进行反转,返回反转之后的结果

  

 

  3. 数组类与链表

  

//一维数组

 

  int[] array_Name = new int[length];//数组定义方式一

  int[] array_name=new int[]{初始的元素值};//数组定义方式二

  int N=array.length;//获得数组长度

  array[index];//获得数组的某个元素值

  //二维数组

  int[][] name=new int[line_size][row_size];//定义

  int line=array.length;//获得二维数组行数

  int row=array[0].length;//获得二维数组列数

  //链表(结构体)

  Class Node {//定义

   int val;

   Node next;

   public Node(int val){

   this.val=val;

   this.next=null;

  Node node=new Node(value);//新建链表节点

  ListNode.val;//取链表结点的值

  ListNode.next;//取链表节点的指针

  //LinkedList

  LinkedList E LLName=new LinkedList E //定义一个链表,可根据头尾操作模拟队列或者栈

  LinkedList E listname=new LinkedList E (oldlist);//将oldlist的元素复制一份给listname,且是深拷贝

  LinkedList.remove();//从列表中删除元素,默认删除第一个元素,类似函数还有removeLast()\removeFirst()

  LinkedList.remove(index);//删除指定下标的元素

  LinkedList.add(element);//从列表的末尾添加元素,类似函数还有addLast(element)\addFirst(element)

  LinkedList.isEmpty();//判断链表是不是空,是空返回true,不是空返回false

  LinkedList.size();//获得链表长度

  
ArrayList E AL_Name = new ArrayList E //定义一个数组

  ArrayList.add(element);//在数组尾部添加元素

  ArrayList.remove(index);//删除指定下标的元素

  ArrayList.get(index);//获得指定下标的元素值

  ArrayList.size();//获得数组大小

  ArrayList.indexOf(element);//查找元素的下标位置

  

 

  4. 栈和队列

  

//栈Stack

 

  Stack E stackName=new Stack E //定义一个栈

  Stack.push(element);//元素压入栈中

  Stack.pop();//顶部元素弹出栈

  Stack.empty();//判断栈是不是空,如果是空返回true,不是空返回false

  //队列Queue

  LinkedList queue_name=new LinkedList ();//队列结构用LinkedList实现

  queue_name.add();//添加元素

  queue_name.poll();//弹出元素

  queue_name.size();//获得队列大小

  

 

  5. 字典类

  

//HashMap相关操作

 

  HashMap type,type HM_Name = new HashMap type,type //定义

  HashMap type,type HM_Name = new HashMap type,type (){{put(key,value);put(key,value);}};//定义并初始化

  HashMap.put(key,value);//添加键值对

  HashMap.get(key);//查找key对应的value并返回

  HashMap.containsKey(key);//在map表中是不是存在key,存在的话返回true,不存在返回false

  

 

  

//树结点定义

 

  public class TreeNode {

   int val;

   TreeNode left;

   TreeNode right;

   TreeNode(int x) { val = x; }

  //获取属性值的两种方式

   //1、TreeNode A

  A.value;

   //2、TreeNode* A

  A- value;

  //空指针

  A==null;//注意是小写null

  //结构体

  root.left;

  root.right;

  root.val;

  

 

  以上就是Java刷题常用的数据结构总结(java刷题常用函数)的详细内容,想要了解更多 Java刷题常用的数据结构总结的内容,请持续关注盛行IT软件开发工作室。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: