阿里巴巴校园招聘 —— 灵犀游戏开发测试岗笔试题目总结(菜鸡版解析)涉及知识点——十字链表、线程与堆栈、FTP、Telnet、红黑树、哈夫曼树、平衡二叉树、乐观锁、悲观锁、HTTP、NIM游戏

27 篇文章 0 订阅
12 篇文章 0 订阅

内容

感觉内容无非是那几个:

数据结构与算法 + 计算机网络 + 操作系统 + C++基础语法知识

简单的送分题我就不说了,我说几个还有点迷惑性的点来整理一下:

1. 十字链表

在Linux内核中应用十分广泛的一种数据结构——十字链表,可以用来表示稀疏矩阵。

2. 线程与堆、栈的关系

栈——线程可以独立拥有,保存其运行状态和局部自动变量。
每个线程的栈相互独立。

堆,一个进程中的所有线程是共享堆的内存空间。

3. FTP

两种连接方式:

  1. 命令连接(类似于建立连接的过程) 21端口
  2. 数据连接 20端口

数据传输模式:

  1. 主动模式,服务器创建的连接
  2. 被动连接,客户端创建的连接

4. Telnet端口

Telnet服务器缺省端口为23.

5. 红黑树

这篇红黑树博客是真的不错,推荐看一下,皮得很

保证从根节点到叶子节点的最长路径不会超过最短路径的两倍。

6. 哈夫曼树

哈夫曼树(Huffman Tree)是在叶子结点和权重确定的情况下,带权路径长度最小的二叉树,也被称为最优二叉树。

7. 平衡二叉树

  1. 是一棵二叉查找树
  2. 左右子树的深度差不超过1

8. 悲观锁

共享资源每次只给一个线程使用,其它线程阻塞,用完后再把资源转让给其它线程。

9. 乐观锁

总是假设最好的情况,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据

可以使用版本号机制和CAS算法实现

乐观锁适用于多读的应用类型,这样可以提高吞吐量

10. HTTP

无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间.

无状态:HTTP 协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。

11. NIM游戏

一堆 直接取走

两堆,取数量大的一堆到数量相等,模仿对手的操作直到获胜

若两堆数量相等,则后手必胜.

N堆
若处于非平衡状态,则先手必胜.
否则,后手必胜.

即将n堆石子的数量异或起来,
假如不为 0,那么先手必胜,
否则, 先手必败。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值