【Java版oj】day37数据库连接池、mkdir

目录

 一、数据库连接池

(1)原题再现

(2)问题分析

(3)完整代码

 二、mkdir

(1)原题再现

(2)问题分析

(3)完整代码


 一、数据库连接池

(1)原题再现

数据库连接池__牛客网

        Web系统通常会频繁地访问数据库,如果每次访问都创建新连接,性能会很差。为了提高性能,架构师决定复用已经创建的连接。当收到请求,并且连接池中没有剩余可用的连接时,系统会创建一个新连接,当请求处理完成时该连接会被放入连接池中,供后续请求使用。
        现在提供你处理请求的日志,请你分析一下连接池最多需要创建多少个连接。

 

输入描述:

输入包含多组数据,每组数据第一行包含一个正整数n(1≤n≤1000),表示请求的数量。 紧接着n行,每行包含一个请求编号id(A、B、C……、Z)和操作(connect或disconnect)。

 

输出描述:

对应每一组数据,输出连接池最多需要创建多少个连接。

示例1

输入

6

A connect

A disconnect

B connect

C connect

B disconnect

C disconnect
输出

2

(2)问题分析

        贪心算法,走一步看一步,如果是connect就+1,如果不是就-1,每一步都判断最大的connect数是多少。

(3)完整代码

import java.util.*;

/*
 * 数据库连接池
 */
public class Main{
	public static void main(String[] args) {
		Scanner sc=new Scanner(System.in);
		while(sc.hasNext()) {
			int num=sc.nextInt();
			String []id=new String[num];
			String []op=new String[num];
			for(int i=0;i
【Java版oj】day37数据库连接池、mkdir_第1张图片

 二、mkdir

(1)原题再现

mkdir__牛客网

        工作中,每当要部署一台新机器的时候,就意味着有一堆目录需要创建。例如要创建目录“/usr/local/bin”,就需要此次创建“/usr”、“/usr/local”以及“/usr/local/bin”。好在,Linux下mkdir提供了强大的“-p”选项,只要一条命令“mkdir -p /usr/local/bin”就能自动创建需要的上级目录。
        现在给你一些需要创建的文件夹目录,请你帮忙生成相应的“mkdir -p”命令。

 

输入描述:

输入包含多组数据。 每组数据第一行为一个正整数n(1≤n≤1024)。 紧接着n行,每行包含一个待创建的目录名,目录名仅由数字和字母组成,长度不超过200个字符。

 

输出描述:

对应每一组数据,输出相应的、按照字典顺序排序的“mkdir -p”命令。 每组数据之后输出一个空行作为分隔。

示例1

输入

3

/a

/a/b

/a/b/c

3

/usr/local/bin

/usr/bin

/usr/local/share/bin

输出

mkdir -p /a/b/c

mkdir -p /usr/bin

mkdir -p /usr/local/bin

mkdir -p /usr/local/share/bin

 

(2)问题分析

        用Arrays.sort()方法可以直接把字符串按字典排序,一开始我的想法就是看前面的字符串在后面的能不能找到,能找到就把它设置一个特定的字符串。好像牛客给定的测试样例有点问题。

(3)完整代码

import java.util.Arrays;
import java.util.Scanner;

/*
 * mkdir
 */
public class Main {
	public static void main(String[] args) {
		Scanner sc=new Scanner(System.in);
		while(sc.hasNext()) {
			int num=sc.nextInt();
			String []dir=new String[num];
			for(int i=0;i

【Java版oj】day37数据库连接池、mkdir_第2张图片​​


【Java版oj】day37数据库连接池、mkdir_第3张图片

你可能感兴趣的:(我是小小做题酱,java,算法,开发语言,牛客,刷题)