![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java程序
mshobtp
这个作者很懒,什么都没留下…
展开
-
Java反转链表
定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL限制:0 <= 节点个数 <= 5000leetCode 剑指Offer24.反转链表public class Main { static class ListNode{ int val; ListNode ne原创 2021-06-10 18:39:05 · 288 阅读 · 0 评论 -
回文数判断
给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。提示:-2^31<= x <= 2^31 - 1LeetCode 9.回文数import java.util.*;public class Main{ public static boolean isPalindrome(int x){ if(x<0||(x%10=原创 2021-05-31 13:21:22 · 127 阅读 · 0 评论 -
对称二叉树
给定一个二叉树,检查它是否是镜像对称的。LeetCode 101.对称二叉树import java.util.*;class TreeNode{ char data; TreeNode left; TreeNode right; public TreeNode(char data){ this.data=data; this.right=null; this.left=null; }}class BiTre原创 2021-05-25 13:13:59 · 116 阅读 · 0 评论 -
无重复字符的最长子串
给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。0 <= s.length <= 5 * 104s 由英文字母、数字、符号和空格组成LeetCode 3.无重复字符的最长子串import java.util.*;public class Main{ public static int lengthOfLongestSubstring(String s){ Set<Character> occ= new HashSet<Chara原创 2021-05-24 14:54:05 · 92 阅读 · 0 评论 -
通配符匹配
给定一个字符串 (s) 和一个字符模式 § ,实现一个支持 ‘?’ 和 ‘*’ 的通配符匹配。‘?’ 可以匹配任何单个字符。‘*’ 可以匹配任意字符串(包括空字符串)。两个字符串完全匹配才算匹配成功。说明:s 可能为空,且只包含从 a-z 的小写字母。p 可能为空,且只包含从 a-z 的小写字母,以及字符 ? 和 *。import java.util.*;public class Main{ public static boolean isMatch(String s,String原创 2021-05-24 08:33:00 · 152 阅读 · 0 评论 -
合并两个有序链表
将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。两个链表的节点数目范围是 [0, 50]-100 <= Node.val <= 100l1 和 l2 均按 非递减顺序 排列LeetCode 21.合并两个有序链表import java.util.*;class ListNode { public int val; ListNode next; public ListNode(){} public Lis原创 2021-05-21 09:57:45 · 57 阅读 · 0 评论 -
最长回文子串
给你一个字符串 s,找到 s 中最长的回文子串。package Pack;import java.lang.reflect.Array;import java.util.*;public class Main{ public static String longestPalindrome(String str){ int n=str.length(); if(n==0||n==1) return str; int [][原创 2021-05-20 22:30:52 · 64 阅读 · 0 评论 -
Java二叉树非递归遍历
前序非递归遍历package Pack;import java.util.*;class TreeNode{ char data; TreeNode left; TreeNode right; public TreeNode(char data){ this.data=data; this.right=null; this.left=null; }}class BiTree{ static int原创 2021-05-19 12:55:27 · 98 阅读 · 0 评论 -
Java无向连通图的广度优先遍历(BFS)
import java.util.*;class MGraph{ char[] vertex; int[][] arc; int vertexNum,arcNum; int[] visited; int[] Q; public MGraph(char[] a,int n,int e){ vertexNum = n; arcNum = e; visited = new int[n]; Array原创 2021-05-18 22:23:14 · 228 阅读 · 0 评论 -
Java无向连通图的深度优先遍历(DFS)
import java.util.*;class MGraph{ public char[] vertex; public int[][] arc; public int vertexNum,arcNum; public int[] visited; public MGraph(char[] a,int n,int e){ this.vertexNum=n; this.arcNum=e; vertex=new cha原创 2021-05-17 08:21:19 · 631 阅读 · 0 评论 -
Java读入单个字符
import java.util.*;public class Main{ public static void main(String args[]){ Scanner in=new Scanner(System.in); char c=in.next().toCharArray()[0]; System.out.println(c); }}import java.util.*;public class Main{ publ原创 2021-05-12 07:47:37 · 831 阅读 · 2 评论 -
Java二叉树的基本操作
import java.util.*;class TreeNode{ char data; TreeNode left; TreeNode right; public TreeNode(char data){ this.data=data; this.right=null; this.left=null; }}class BiTree{ static int index=0; //构建二叉树原创 2021-05-12 07:36:38 · 93 阅读 · 0 评论 -
Java构建二叉树
编一个程序,读入用户输入的一串先序遍历字符串,根据此 字符串建立一个二叉树(以指针方式存储)。 例如如下的先序遍历字符串: ABC##DE#G##F### 其中“#”表示的是空格,空格字符代表空树。建立起此二叉树以后,再对二叉树进行中序遍历,输出遍历结果。输入描述: 输入包括1行字符串,长度不超过100。输出描述:可能有多组测试数据,对于每组数据,输出将输入字符串建立二叉树后中序遍历的序列,每个字符后面都有一个空格。每个输出结果占一行。import java.util...原创 2021-05-11 18:15:13 · 1088 阅读 · 0 评论 -
Java获取有符号整数能表示的最大最小值
public class Main{ public static void main(String args[]){ System.out.println(Integer.MAX_VALUE); System.out.println(Integer.MIN_VALUE); }}原创 2021-05-07 13:47:42 · 233 阅读 · 0 评论 -
判断链表是否有环
public static boolean hasCycle(ListNode head){ if(head==null||head.next==null) return false; ListNode slow=head; ListNode fast=head.next; while(slow!=fast) { if(fast==null||fast.next==null...原创 2021-05-06 18:31:30 · 43 阅读 · 0 评论 -
137.只出现一次的数字||
class Solution { public int singleNumber(int[] nums) { Map<Integer, Integer> freq = new HashMap<Integer, Integer>(); for (int num : nums) { freq.put(num, freq.getOrDefault(num, 0) + 1); } int an..原创 2021-05-05 13:40:55 · 69 阅读 · 0 评论 -
Java使用HashMap获取数组中数字出现的次数
import java.util.*;public class Main{ public static void main(String args[]){ //记录数组中每个数字出现的次数 Scanner in=new Scanner(System.in); int[] nums = new int[1005]; HashMap<Integer,Integer> map=new HashMap<Integer, In原创 2021-05-05 13:30:34 · 712 阅读 · 0 评论 -
258 各位相加
class Solution { static int p(int a){ int sum=0; while(a!=0) { int t=a%10; sum=sum+t; a=a/10; } return sum; } public int addDigits(int num) { int la=p(num); .原创 2021-04-28 14:20:14 · 48 阅读 · 0 评论 -
牛客小白月赛1
import java.util.*;public class Main{ public static void main(String args[]){ Scanner in=new Scanner(System.in); String s1,s2,s3,s4,s5,s6; s1=in.next(); s2=in.next(); s3=in.next(); s4=in.next(); ...原创 2021-04-28 13:44:08 · 76 阅读 · 0 评论 -
牛客小白月赛1
import java.util.*;import java.lang.*;public class Main{ public static void main(String args[]){ Scanner in=new Scanner(System.in); int T=in.nextInt(); while(T>0) { T--; int a=in.nextInt();..原创 2021-04-28 13:05:11 · 83 阅读 · 0 评论 -
链队列的创建,入队,出队,队头元素,判空,长度,打印
package Pack;import java.util.*;class Node{ int val; Node next=null; public Node(int val){ this.val=val; }}class LinkQueue{ Node front; Node rear; int size; public LinkQueue(){ Node s=null; front原创 2021-04-26 19:29:06 · 481 阅读 · 0 评论 -
链栈的创建,入栈,出栈,取栈顶元素,判空,元素个数
import java.util.*;class Node{ int val; Node next=null; public Node(int val){ this.val=val; }}class LinkStack{ Node top; int size; public LinkStack(){ top=null; size=0; } public void Push(int原创 2021-04-26 13:18:20 · 980 阅读 · 0 评论 -
单链表的创建,打印,长度,查找,插入,删除
import java.util.*;class ListNode { public int val; ListNode next=null; public ListNode(int val){ this.val=val; }}class LinkList{ ListNode first=new ListNode(-1); //ListNode first; //public LinkList(int a){ //原创 2021-04-25 19:12:28 · 98 阅读 · 0 评论 -
尾插法建立单链表
package Pack;import java.util.*;class ListNode { public int val; ListNode next;}class LinkList{ ListNode first; public LinkList(int[] a,int n){ first=new ListNode(); ListNode r=first; for(int i=0;i<n;i++)原创 2021-04-16 20:45:48 · 115 阅读 · 0 评论 -
头插法建立单链表
package Pack;import java.util.*;class ListNode { //建立节点 public int val; ListNode next;}class LinkList{ ListNode first; public LinkList(int[] a,int n){ first=new ListNode(); //建立头节点 first.next=nu原创 2021-04-16 20:31:21 · 294 阅读 · 0 评论