- 博客(11)
- 收藏
- 关注
原创 3k+1个字符组成一个Y
用字符串中的每一个字符(不是换行符或结束符’\0’)代表一位老师,输出排好后的队形。要求 Y字除去中心点外,上下半部分等高,按照从左到右,从上到下进行排序。队形中没人的部分用空格占位。输入数据保证可以排出一个完整的Y字,即长度为 3k+1 (k>=1)例如: 7个 x ,排成队形为(为了方便说明,这里用‘-’代替空格):x—x-x-x–x–x–xpackage 猿辅导;import java.util.Scanner;public class paizhaoduixing {
2020-07-26 23:54:57
304
原创 多线程交替打印ABC
使用Lockimport java.util.concurrent.locks.Condition;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;public class ABCLock2 { private static Lock lock = new ReentrantLock(); private static Condition A = lock.
2020-07-25 23:42:48
168
原创 多线程交替打印奇偶数
目录使用synchronized和wait()、notify()实现使用Lock实现使用synchronized和wait()、notify()实现public class OddEvenprint { private static volatile Integer number = 1; private Object ob = new Object(); class Odd implements Runnable{ @Override publ
2020-07-25 23:40:36
200
原创 力扣189,旋转数组
题目:将数组向右移动k位;逐个右移,如:123456,右移2位,先,1->3;3->5,5->1;即521436;然后:2->4,4->6,6->2;即561234;0ms;40MB;class Solution { public void rotate(int[] nums, int k) { k = k % nums.length;//k可能大于nums.length,取余是真正移动的距离 int count =
2020-06-27 11:25:38
179
原创 逆波兰表达式
逆波兰表达式求解:输入:逆波兰表达式;输出结果:class Solution { public int evalRPN(String[] tokens) { Stack<Integer> stack = new Stack<>(); Integer num1,num2; for(String s:tokens){ switch(s){ case "+" :
2020-06-25 21:22:59
163
原创 二叉树的遍历,递归,非递归,莫里斯遍历
今天做力扣144题,二叉树的前序遍历,迭代实现,想着整理一下二叉树的遍历。二叉树结点定义:/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */1.前序遍历,力扣(144)(1).递归实现,时间复杂度O(N
2020-06-25 16:27:25
148
原创 130.被围绕的区域
给定一个二维的矩阵,包含 ‘X’ 和 ‘O’(字母 O)。找到所有被 ‘X’ 围绕的区域,并将这些区域里所有的 ‘O’ 用 ‘X’ 填充。示例:X X X XX O O XX X O XX O X X运行你的函数后,矩阵变为:X X X XX X X XX X X XX O X X解释:被围绕的区间不会存在于边界上,换句话说,任何边界上的 ‘O’ 都不会被填充为 ‘X’。 任何不在边界上,或不与边界上的 ‘O’ 相连的 ‘O’ 最终都会被填充为 ‘X’。如果两个元素在水平或垂直
2020-06-24 10:47:13
106
原创 一个简单的洗牌问题,JAVA实现
这题是招商提前批笔试的一道题,当时做的不好,没有练习scanner,现在总结一下。洗牌在生活中十分常见,现在需要写一个程序模拟洗牌的过程。题目记不清了,就例如:1,2,3,4,5,6的牌,分俩组,1,2,3和4,5,6,合成1,4,2,5,3,6,(不清楚奇数张牌怎么处理)。下面这个代码是先放1,再放4,这样交叉放,奇数多的一张顺延放在最后。比如1,2,3,4,5,6,7就会变成1,4,2,5,3,6,7.输入:6 1 1 2 3 4 5 6输出:1 4 2 5 3 6输入第一个数是牌的长度
2020-06-23 11:22:58
343
原创 快排,归并几个排序算法
快排,希尔排序,归并排序递归和非递归实现,冒泡,选择,插入排序import java.util.*;public class Sort{ public static void main(String[] args){ int[] arr = {9,78,0,23,567,70,19,456}; //System.out.println(Arrays.toString(arr)); // QuickSort(arr,0,arr.length-1);
2020-06-07 11:57:13
268
原创 力扣78题子集
给定一组不含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集)class Solution { public List<List<Integer>> subsets(int[] nums) { int n = nums.length; List<List<Integer>> output = new ArrayList(); for(int k=0;k< 1<<n; k++
2020-06-07 11:51:11
174
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人