2023,8.14 【4399Java开发】笔试

10道选择题,三道简答,三道编程,还有两道论述。做的人麻了。。。

简答:

1.MySQL的事务隔离级别?事务并发时存在的问题

2.描述一个高并发任务调度系统的架构设计。包括系统组成部分、各组件的功能、组件间的通信方式。(2)设计适合该系统的数据库模型(3)高并发情况下,有哪些优化策略来扩展系统的并发能力 。

3.说出4种,实现web流量的负载均衡的方式

编程

4399 应该时人工判题吧,也没有办法提交看过多少。但不用写输入输出了,都是过了用例。

T1:使用滑动数组,逆向思维求解,使用滑动窗口找到超过重复类型的重复子数组个数m。最后结果就是n+(n-1)+...+1-m;

 public static void main(String[] args) {
        char[] s={'A','B','C','B'};
        int K=1;
        int m=0;
        int res=0;
        //初始化res
        for(int i=0;i<=s.length;i++){
            res+=i;
        }
        Map<Character,Integer> window=new HashMap<>();
        //构建滑动窗口,滑动区间[left,right)
        int left=0,right=0;
        while (right < s.length) {
            // c 是将移入窗口的字符
            char c = s[right];
            // 增大窗口
            right++;
            // 进行窗口内数据的更新
            window.put(c, window.getOrDefault(c, 0) + 1);
            //判断是否需要缩小窗口
            while (window.get(c)>K){
                char d = s[left];
                // 缩小窗口
                left++;
                m++;
                // 进行窗口内数据的一系列更新
                window.put(d, window.get(d) - 1);
            }
        }
       System.out.println("有趣的排列组合数有:"+res+"-"+m+"= "+(res-m));
    }

T2:大数相减,样例过了

public class BigDataCompute {
    public static void main(String[] args) {
        String a = "123";
        String b = "30";
        subtraction(a, b);

    }

    public static void subtraction(String a, String b) {
        //翻转被减数和减数,从低位开始计算
        char[] numA = new StringBuilder(a).reverse().toString().toCharArray();
        char[] numB = new StringBuilder(b).reverse().toString().toCharArray();
        int[] result = new int[numA.length];
        for (int i = 0; i < result.length; i++) {
            int intA = i < numA.length ? numA[i] - '0' : 0;
            int intB = i < numB.length ? numB[i] - '0' : 0;
            result[i] = intA - intB;
        }
        //借位逻辑如果结果指针中存在负数,说明该位置向前借位了,处理借位
        for (int i = 0; i < result.length; i++) {
            if (result[i] < 0) {
                result[i + 1] -= 1;
                result[i] += 10;
            }
        }
        StringBuilder sbr = new StringBuilder();
        boolean bool = true;
        for (int i = result.length - 1; i >= 0; i--) {
            if (result[i] == 0 && bool) {
			continue;
			}else{
				bool=false;
			}
            sbr.append(result[i]);
        }
        System.out.println(sbr);
    }
}

T3:力扣原题:连续子数组和,放一个官方题解:

还有两到技术论述:

1 假如你的某个方案得到了上司的认可,但是推进过程当中来自组员的阻力比较大,他们的积极性比较低,你觉得原因会是什么?你会通过什么样的方式去获得组员的认可?

2.你是否曾经面对过非常复杂的问题或任务?你又是如何成功地解决它的?

#23届找工作求助阵地##秋招##4399秋招#
全部评论
人工判题😂有那么夸张吗
1
送花
回复 分享
发布于 2023-08-26 17:32 湖南
三七互娱,游戏大厂
1
送花
回复 分享
发布于 2023-09-02 14:08 广东
国泰君安
校招火热招聘中
官网直投
这题量很多阿,时间是多少
点赞
送花
回复 分享
发布于 2023-08-15 19:13 福建
我简历8月11号过的,现在还没给我发笔试😂
点赞
送花
回复 分享
发布于 2023-08-15 20:51 江苏
为啥感觉你的比我简单很多啊,我那算法题都是什么棋牌类的场景
点赞
送花
回复 分享
发布于 2023-08-15 21:10 安徽
上来就问架构设计吗?这么离谱
点赞
送花
回复 分享
发布于 2023-08-15 21:21 广东
技术论述的第一道题和我的一样。😂
点赞
送花
回复 分享
发布于 2023-08-16 10:49 江苏
后天笔试,我都不想做了,练练手吧
点赞
送花
回复 分享
发布于 2023-08-21 19:40 上海
楼主你的大数相减有点问题 1. 数字相等时不输出 2. 数字a < 数字b时,报错。如a = 123, b = 124 3. 没有考虑负数情况,如a = -1 b = -2
点赞
送花
回复 分享
发布于 2023-08-23 12:04 浙江
不是兄弟,为什么你们做完都记得啊,而且这么详细😱
点赞
送花
回复 分享
发布于 2023-08-23 21:09 湖北
和今天的一模一样,我想问4399的笔试系统,代码部分 好恶心哇!
点赞
送花
回复 分享
发布于 2023-09-04 20:43 北京

相关推荐

Express.js是一个流行的Node.js&nbsp;Web应用程序框架,它建立在Node.js的HTTP模块之上,并提供了一组简洁、灵活和易于使用的API,用于构建Web应用程序和API。Express.js的特点包括:https://www.nowcoder.com/issue/tutorial?zhuanlanId=Mg58Em&amp;uuid=1730841bd8554b2fa6de4161e81ebb45简洁而灵活:Express.js提供了一组简单而灵活的API,使开发者能够快速构建Web应用程序。它不会强加太多约束,允许开发者自定义和配置应用程序的行为。路由功能:Express.js支持路由功能,使开发者能够定义不同的URL路径和HTTP方法与相应的处理函数之间的映射关系。这样,开发者可以根据请求的URL和HTTP方法,将请求分发到相应的处理函数上进行处理。中间件(Middleware):Express.js中的中间件是一个非常强大且重要的概念。中间件是在请求和响应之间执行的函数,它可以修改请求和响应对象、执行某些特定的任务,或者将控制权传递给下一个中间件。中间件使得可以在请求的不同阶段进行预处理和后处理,例如身份验证、日志记录、错误处理等。视图模板:Express.js支持使用模板引擎来生成动态的HTML(或其他格式)视图。开发者可以选择喜欢的模板引擎(如pug、EJS等),并将其与Express.js集成,以便以一种简单和可维护的方式生成视图。大量的第三方中间件和插件:Express.js生态系统非常丰富,有大量的第三方中间件和插件可供选择。这些中间件和插件可以帮助开发者解决许多常见的任务和问题,例如身份验证、会话管理、数据库集成等。响应处理:Express.js提供了方便的API来处理各种类型的响应,包括JSON数据、静态文件、重定向等。总体而言,Express.js是一个轻量级而强大的Web应用程序框架,它将许多常见的Web开发任务封装为易于使用的API,让开发者可以更专注于业务逻辑的实现而不是底层细节。
点赞 评论 收藏
分享
16 59 评论
分享
牛客网
牛客企业服务