文档库 最新最全的文档下载
当前位置:文档库 › 阿里巴巴笔试题

阿里巴巴笔试题

阿里巴巴笔试题
阿里巴巴笔试题

阿里巴巴笔试题

下面的这份阿里巴巴题是由小编为您精心整理,请您对此进行参考:

阿里巴巴笔试1:列举几种表连接方式:hash join/merge join/nest loop(cluster join)/index join

阿里巴巴笔试2:不借助第三方工具,怎样查看sql的执行计划

set autot on

explain plan set statement_id = item_id for sql;

select * from table(dbms_xplan.display);

阿里巴巴笔试3:如何使用CBO,CBO与RULE的区别

在optimizer_mode=choose时,如果表有统计信息(分区表外),优化器将选择CBO,否则选RBO。RBO遵循简单的分级方法学,使用15种级别要点,当接收到查询,优化器将评估使用到的要点数目, 然后选择最佳级别(最少的数量)的执行路径来运行查询。CBO尝试找到最低成本的访问数据的方法,为了最大的吞吐量或最快的初始响应时间,计算使用不同的执行计划的成本,并选择成本最低的一个,关于表的数据内容的统计被用于确定执行计划。

阿里巴巴笔试4:如何定位重要(消耗资源多)的SQL

select sql_text

from v$sql

where disk_reads 1000 or (executions 0 and buffer_gets/executions 30000);

阿里巴巴笔试5:如何跟踪某个session的SQL

exec dbms_system.set_sql_trace_in_session(sid,serial#, sql_trace);

select sid,serial# from v$session where sid = (select sid from v$mystat where rownum = 1);

exec dbms_system.set_ev( sid, serial#, event_10046, level_12,);

阿里巴巴笔试6:SQL调整最关注的是什么

查看该SQL的response time(db block gets/consistent gets/physical reads/sorts (disk))

阿里巴巴笔试7:说说你对索引的认识(索引的结构、对dml影响、为什么提高查询性能)

b-tree index/bitmap index/function index/patitional index(local/global) 索引通常能提高select/update/delete的性能,会降低insert的速度

阿里巴巴笔试8:使用索引查询一定能提高查询的性能吗?为什么

索引就是为了提高查询性能而存在的, 如果在查询中索引没有

提高性能, 只能说是用错了索引,或者讲是场合不同

阿里巴巴笔试9:绑定变量是什么?绑定变量有什么优缺点?

绑定变量是相对文本变量来讲的,所谓文本变量是指在SQL直接书写查询条件,这样的SQL在不同条件下需要反复解析,绑定变量是指使用变量来代替直接书写条件,查询bind value在运行时传递,然后绑定执行。优点是减少硬解析,降低CPU的争用,节省shared_pool ;缺点是不能使用histogram,sql优化比较困难

阿里巴巴笔试10:如何稳定(固定)执行计划

query_rewrite_enabled = true

star_transformation_enabled = true

optimizer_features_enable = 9.2.0

创建并使用stored outline

阿里巴巴笔试11:和排序相关的内存在8i和9i分别怎样调整,临时表空间的作用是什么

8i中sort_area_size/sort_area_retained_size决定了排序所需要的内存如果排序操作不能在sort_area_size中完成,就会用到temp表空间9i中如果workarea_size_policy=auto时, 排序在pga 内进行,通常pga_aggregate_target的1/20可以用来进行disk sort;如果workarea_size_policy=manual时,排序需要的内存由sort_area_size决定在执行order by/group by/distinct/union/create index/index rebuild/minus等操作时,如果在pga或sort_area_size中不能完成,排序将在临时表空间进行(disk sort)临时表空间主要作用就是完成系统中的disk sort.

阿里巴巴笔试12:存在表T(a,b,c,d),要根据字段c排序后取第

21 30条记录显示,请给出sqlcreate table t(a number(,b number(,c number(,d number();/begin for i in 1 .. 300 loopinsert into t values(mod(i,2),i/2,dbms_random.value(1,300),i/4);end loop;end;/select * from (select c.*,rownum as rn from (select * from t order by c desc) c) where rn between 21 and 30;/select * from (select * from test order by c desc) x where rownum 30minusselect * from (select * from test order by c desc) y where rownum 20 order by 3 desc相比之minus性能较差

二:阿里巴巴笔试数据库基本概念类

阿里巴巴笔试1:pctused and pctfree 表示什么含义有什么作用

pctused与pctfree控制数据块是否出现在freelist中,pctfree 控制数据块中保留用于update的空间,当数据块中的free space小于pctfree设置的空间时,该数据块从freelist中去掉,当块由于dml 操作free space大于pct_used设置的空间时,该数据库块将被添加

在freelist链表中。

阿里巴巴笔试2:简单描述table / segment / extent / block 之间的关系

table创建时,默认创建了一个data segment,每个data segment含有min extents指定的extents数,每个extent据据表空间的存储参数分配一定数量的blocks

阿里巴巴笔试3:描述tablespace和datafile之间的关系

一个tablespace可以有一个或多个datafile,每个datafile只能在一个tablespace内,table中的数据,通过hash算法分布在tablespace中的各个datafile中,tablespace是逻辑上的概念,datafile则在物理上储存了数据库的种种对象。

阿里巴巴笔试4:本地治理表空间和字典治理表空间的特点,

ASSM有什么特点

本地治理表空间(Locally Managed Tablespace简称LMT):8i以后出现的一种新的表空间的治理模式,通过位图来治理表空间的空间使用。

字典治理表空间(Dictionary-Managed Tablespace简称DMT):8i以前包括以后都还可以使用的一种表空间治理模式,通过数据字典治理表空间的空间使用。

动段空间治理(ASSM),它首次出现在Oracle920里有了ASSM,链接列表freelist被位图所取代,它是一个二进制的数组,能够迅速有效地治理存储扩展和剩余区块(free block),因此能够改善分段存储本质,ASSM表空间上创建的段还有另外一个称呼叫Bitmap Managed Segments(BMB 段)。

阿里巴巴编码规范题库

1.如何处理单元测试产生的数据,下列哪些说法是正确的?ABC A .测试数据入库时加特殊前缀标识。 B .测试数据使用独立的测试库。 C .自动回滚单元测试产生的脏数据。 D .无须区别,统一在业务代码中进行判断和识别。 多选2.关于并发处理,下列哪些说法符合《阿里巴巴Java开发手册》:ABC A .线程资源必须通过线程池提供,不允许在应用中自行显式创建线程。 B .同步处理时,能锁部分代码区块的情况下不要锁整个方法;高并发时,同步调用应该考虑到性能损耗。 C .创建线程或线程池时,推荐给线程指定一个有意义的名称,方便出错时回溯。 D .推荐使用Executors.newFixedThreadPool(int x)生成指定大小的线程池。(线程池不允许使用Executors 去创建,而是通过ThreadPoolExecutor 的方式) 多选3.下列哪些说法符合《阿里巴巴Java开发手册》:ACD A .对于“明确停止使用的代码和配置”,如方法、变量、类、配置文件、动态配置属性等要坚决从程序中清理出去,避免造成过多垃圾。 B .永久弃用的代码段注释掉即可,即不用加任何注释。 C .对于暂时被注释掉,后续可能恢复使用的代码片断,在注释代码上方,统一规定使用三个斜杠(///)来说明注释掉代码的理由。 D .不要在视图模板中加入任何复杂的逻辑。 多选4.关于分页查询,下列哪些说法符合《阿里巴巴Java开发手册》:ABC A .分页查询,当统计的count为0时,应该直接返回,不要再执行分页查询语句。 B .iBATIS自带的queryForList(String statementName,int start,int size)分页接口有性能隐患,不允许使用。 C .定义明确的sql查询语句,通过传入参数start和size来实现分页逻辑。 D .可使用存储过程写分页逻辑,提高效率。 多选5.根据《阿里巴巴Java开发手册》,以下功能必须进行水平权限控制校验的有:ABCD A .订单详情页面。 B .类目管理后台。 C .店铺装修后台。 D .订单付款页面 多选1.关于多线程并行处理定时任务的情况,下列哪些说法符合《阿里巴巴Java开发手册》:BCD A .推荐使用Timer方式处理。 B .推荐使用ScheduledExecutorService方式处理。 C .Timer运行多个TimeTask时,只要其中之一没有捕获抛出的异常,其它任务便会自动终止运行。 D .ScheduledExecutorService并发运行多个定时任务时,其中某线程抛出异常,不会影响到其它线程的继续运行。

阿里巴巴笔试题(南京站,20011年9月)

阿里巴巴笔试题目(20011.9) 技术类笔试试题(卷一)卷一:Java开发、测试工程师(25题) 技术类笔试试题(卷二)卷二:搜索研发、 C++(25题) 1. 20个阿里巴巴B2B技术部的员工被安排为4排,每排5个人,我们 任意选其中4人送给他们一人一本《effective c++》,那么我们 选出的4人都在不同排的概率为: A.5^4*5!*15!/20! B. 4^5*5!*15!/20! C. 5^4*4!*16!/20! D. 4^5*4!*16!/20! 2. 若有序表的关键字序列为(b,c,d,e,f,g,q,r,s,t),则在二分查找关键字b的过程中,先后进行的关键字依次为: A.f,c,b B.f,d,b C.g,c,b D.g,d,b 3. perl里面声明:open(FILE, mode,file); 操作的描述,下列哪项不正确? A. FILE可以用变量$file来代替 B. mode可以和file写在一起,例如:open(FILE, ‘>file’) C. mode为+<的时候,只可以读文件,不能写文件 D. mode可以省略不写 4. 有一虚拟存储系统,若进程在内存中占3页(开始时内存为空),若采用先进先出(FIFO)页面淘汰算法,当执行如下访问页号序列后1,2,3,4,5,1,2,5,1,2,3,4,5,会发生多少缺页 A.7 B.8

C.9 D.10 5. 设有一个顺序栈S,元素s1,s2,s3,s4,s5, s6依次进栈,如果六个元素的出栈顺序为s2,s3,s4,s6,s5,s1,则顺序栈的容量至少应为多少 A.2 B.3 C.4 D.5 6. 下列关于文件索引结构的叙述中,哪一个是错误的? A. 采用索引结构,逻辑上连续的文件存放在连续的物理块中 B. 系统为每个文件建立一张索引表 C. 索引结构的优点是访问速度快,文件长度可以动态变化 D. 索引结构的缺点是存储开销大 7. 在ASC算法team日常开发中,常常面临一些数据结构的抉择,令人纠结。目前大家在策划一个FBI项目(Fast Binary Indexing),其中用到的词汇有6200条,词汇长度在10-15之间,词汇字符是英文字母,区分大小写。请在下面几个数据结构中选择一个使检索速度最快的: A. 二叉搜索树,比较函数开销:1次运算/每字符 B. 哈希表,hash算法开销:10次运算/每字符 C. 链表,比较函数开销:1次运算/每字符 D. TRIE树,寻找子节点开销:1次运算/每字符 8. [0,2,1,4,3,9,5,8,6,7]是以数组形式存储的最小堆,删除堆顶元素0后的结果是: A. [2,1,4,3,9,5,8,6,7] B. [1,2,5,4,3,9,8,6,7] C. [2,3,1,4,7,9,5,8,6] D. [1,2,5,4,3,9,7,8,6] 9. 某页式存储管理系统中,地址寄存器长度为24位,其中页号为14位,则主存的分块大小是()字节。 A.10 B.2^10

阿里巴巴实习生笔试题含答案

阿里巴巴实习生笔试题含答案

答案:D 内联函数: Tip:只有当函数只有10 行甚至更少时才将其定义为内联函数. 定义: 当函数被声明为内联函数之后, 编译器会将其内联展开, 而不是按一般的函数调用机制进行调用. 优点: 当函数体比较小的时候, 内联该函数能够令目标代码更加高效. 对于存取函数以及其它函数体比较短, 性能关键的函数, 鼓励使用内联. 缺点: 滥用内联将导致程序变慢. 内联可能使目标代码量或增或减, 这取决于内联函数的大小. 内联非常短小的存取函数一般会减少代码大小, 但内联一个相当大的函数将戏剧性的增加代码

大小. 现代处理器由于更好的利用了指令缓存, 小巧的代码往往执行更快。 结论: 一个较为合理的经验准则是, 不要内联超过10 行的函数. 谨慎对待析构函数, 析构函数往往比其表面看起来要更长, 因为有隐含的成员和基类析构函数被调用! 另一个实用的经验准则: 内联那些包含循环或switch 语句的函数常常是得不偿失(除非在大多数情况下, 这些循环或switch 语句从不被执行). 注意:有些函数即使声明为内联的也不一定会被编译器内联, 这点很重要; 比如虚函数和递归函数就不会被正常内联. 一般, 递归函数不应该声明成内联函数.(递归调用堆栈的展开并不像循环那么简单, 比如递归层数在编译时可能是未知的, 大多数编译器都不支持内联递归函数). 虚函数内联的主要原因则是想把它的函数体放在类定义内, 为了图个方便, 抑或是当作文档描述其行为, 比如精短的存取函数. -inl.h文件: Tip:复杂的内联函数的定义, 应放在后缀名为-inl.h 的头文件中.

阿里笔试题

1、假设栈S和队列Q的初始状态为空,元素a、b、c、d、e、f依次通过S和Q,即每一 个元素必须先进栈,之后再出栈进入队列。若这6个元素出队的顺序是b、d、c、f、e、a,则栈S的容量至少应该为______。 2、在一个元素个数为N的数组里,找到升序排在N/5位置的元素的最优算法时间复杂度是 ______。 3、已知一棵有 2014 个结点的树,其叶结点个数为 116,该树对应的二叉树中无左孩子结点 或右孩子结点的结点个数是______。 4、下述描述中,正确的是____。 ?char const * pointer表示pointer指向的内存区域的内容不能修改 ?const char *pointer表示pointer不能指向别的内存地址 ?char * const pointer 表示pointer指向的内存区域的内容不能修改 ?const char * const pointer在C++语言中不合法 5、你有一个3X3X3的立方体。你现在在正面左上的顶点,需要移动到对角线的背面右下的顶点中。每次移动不限距离,但只能从前至后、从左至右、从上至下运动,即不允许斜向或后退。有______种方法。 6、在设计一个离线的大数据处理系统,下面哪个性能指标不是系统追求的? ?健壮性 ?高吞吐 ?低延迟 ?处理的数据规模 7、需要频繁的插入删除操作使用什么结构比较合适______。 ?数组 ?队列 ?链表

?栈 8、在unix系统下执行chmod("/usr/test/sample",0753)之后该文件sample的访问权限为____。 ?拥有者可读写执行,同组用户可写可执行,其他用户可读可执行 ?拥有者可读写执行,同组用户可读写,其他用户可读可执行 ?拥有者可读写执行,同组用户可读可执行,其他用户可写可执行 ?拥有者可读写执行,同组用户可读可执行,其他用户可读写 ?数组做sizeof的参数不退化,传递给strlen就退化为指针了。 ?sizeof的参数可以是数据的类型,也可以是变量,而strlen只能以结尾为‘\0‘的字符串作参数。 ?sizeof和strlen都是在编译后运行才能计算出来结果。 ?sizeof计算的是数据类型占内存的大小,而strlen计算的是字符串实际的长度。 10、下列代码的输出结果是 int i=-1; unsigned j=1; if (ii) printf("(j>i)成立\n"); else

阿里巴巴笔试题+解析(完整)

阿里巴巴面试题 1、 20个阿里巴巴B2B技术部的员工被安排为4排,每排5个人,我们任意选其中4人送给他们一人一本《effective c++》,那么我们选出的4人都在不同排的概率为: A、 5^4*5!*15!/20! B、 4^5*5!*15!/20! C、 5^4*4!*16!/20! D、 4^5*4!*16!/20! 2、若有序表的关键字序列为(b,c,d,e,f,g,q,r,s,t),则在二分查找关键字b的过程中,先后进行的关键字依次为: A、f,c,b B、f,d,b C、g,c,b D、g,d,b 3、 perl里面声明:open(FILE,mode,file); 操作的描述,下列哪项不正确? A、 FILE可以用变量$file来代替 B、 mode可以和file写在一起,例如:open(FILE, ‘>file’) C、 mode为+<的时候,只可以读文件,不能写文件(既可以读也可以写) D、 mode可以省略不写 4、有一个虚拟存储系统,若进程在内存中占3页(开始时内存为空),若采用先进先出(FIFO)页面淘汰算法,当执行如下访问页号序列后1,2,3,4,5,1,2,5,1,2,3,4,5,会发生多少缺页? A、7 B、8 C、9 D、10 5、设有一个顺序栈S,元素s1、s2、s3、s4、s5、s6依次进栈,如果6个元素的出栈顺序为s2、s3、s4、s 6、s5、s1,则顺序栈的容量至少应为多少? A、2 B、3 C、4 D、5 6、下列关于文件索引结构的叙述中,哪一个是错误的? A、采用索引结构,逻辑上连续的文件存放在连续的物理块中 B、系统为每个文件建立一张索引表 C、索引结构的优点是访问速度快,文件长度可以动态变化 D、索引结构的缺点是存储开销大 7、在ASC算法team日常开发中,常常面临一些数据结构的抉择,令人纠结。目前大家在策划一个FBI项目(Fast Binary Indexing),其中用到的词汇有6200条,词汇长度在10-15之间,词汇字符是英文字母,区分大小写。请在下面几个数据结构中选择一个使检索速度最快的: A、二叉搜索树,比较函数开销:1次运算/每字符 B、哈希表,hash算法开销:10次运算/每字符 C、链表,比较函数开销:1次运算/每字符 D、 TRIE树,寻找子节点开销:1次运算/每字符 8、【0、2、1、4、3、9、5、8、6、7】是以数组形式存储的最小堆,删除堆顶元素0后的结果是() A、【2、1、4、3、9、5、8、6、7】 B、【1、2、5、4、3、9、8、6、7】

阿里面试题

阿里巴巴Java面试题锦集 阿里java相关问题,都是之前通过不断优秀人才的铺垫总结的,希望对大家帮助 1、微信红包怎么实现。 2、海量数据分析。 3、测试职位问的线程安全和非线程安全。 4、HTTP2.0、thrift。 5、面试电话沟通可能先让自我介绍。 6、分布式事务一致性。 7、nio的底层实现。 8、jvm基础是必问的,jvm GC原理,JVM怎么回收内存。 9、Java是什么。 10、API接口与SDI接口的区别(API是提供给别人的接口)。 11、dubbo如何一条链接并发多个调用。Dubbo的原理,序列化相关问题。 12、用过哪些中间件。 13、做过工作流引擎没有。 14、以前的工作经历,自己觉得出彩的地方(钉钉) 15、线程池的一些原理,锁的机制升降级(天猫、蚂蚁) 16、从系统层面考虑,分布式从哪些纬度考虑(天猫) 17、Hadoop底层怎么实现(天猫) 18、threadLocal,线程池,hashMap/hashTable/coccurentHashMap等(天猫) 19、秒杀系统的设计(天猫)

20、虚拟机,IO相关知识点(天猫) 21、Linux的命令(天猫) 22、一个整形数组,给定一个数,在数组中找出两个数的和等于这个数,并打印出来,我写的时间复杂度高,要求O(n)。(天猫) 23、n个整数,找出连续的m个数加和是最大。(天猫) 24、更重视开源技术(蚂蚁金服上海) 25、数据库锁隐原理(蚂蚁金服网商) 26、1000个线程同时运行,怎么防止不卡(航旅) 27、并列的并发消费问题(航旅) 28、高并发量大的话怎么处理热点,数据等(蚂蚁金服) 29、如何获取一个本地服务器上可用的端口 30、流量控制相关问题(蚂蚁金服) 31、数据库TPS是多少,是否进行测试过(天猫) 32、缓存击穿有哪些方案解决(天猫) 33、Java怎么挖取回收器相关原理(财富) 34、Java的集合都有哪些,都有什么特点(信息平台) 35、分布式锁,redis缓存,spring aop,系统架构图,MySQL的特性(信息平台) 36、场景,同时给10万个人发工资,怎么样设计并发方案,能确保在1分钟内全部发完打个比方会提出类似的场景(信息平台) 阿里HR面试时的核心问题: 1、你为什么离职?

阿里云笔试题目

1.有一个文件:c:/c.txt,写java程序把该文件内容复制两遍,追加到c:/c.txt; 2.写正则表达式1.邮箱2.数字 3.HashMap 改变map类对用户会不会有影响? 4.Linux中需查看所有的java进程,用什么命令 ps -ef|grep java 5.Ajax请求的整个流程 AJAX 在浏览器与Web 服务器之间使用异步数据传输(HTTP 请求),这样就可使网页从服务器请求少量的信息,而不是整个页面。 open():建立到服务器的新请求。 send():向服务器发送请求。 abort():退出当前请求。 readyState:提供当前 HTML 的就绪状态。 responseText:服务器返回的请求响应文本。 6.写一个类实现线程同步的单例设计模式 7.一个包含4块硬盘的服务器一年中至少有一块硬盘出故障的概率是99.99%,每块硬盘任意时刻出故 障的概率服从相同的分布规律,并且彼此独立,问12块硬盘的服务器一季度内至少有一个硬盘出故障的概率是多少。 8.有一个size1000的ector,删除其中的第5,6,7号元素,要求效率高(C) 9.数列L中有n个整数,其中K个数字出现了两次,1个数字出现了一次,所以n=2k+1; 请在使用O(1)空间的前提下,尽快找出只出现一次的那个数字,并说明算法的复杂度。 用异或,时间复杂度O(n) 10.有一个文件,存在40亿个不重复的整数(0~4294967295),可用内存只有256M,32比 特的整数有4294967295(约42.9亿)种取值可能,如何找出不存在的294967295(约 2.9亿)个数扫描结果数据可存放到文件中,不占用内存 分段载入内存,排序,输出,一共要扫描文件2^32/(256*2^20/32)=512遍 BITMAP分16次处理 建42.9bits的文件,按200m一段映射,先遍历40亿个数,检查n/有8字节位置是否在当前映射区,否则换映射位置,然后标记。然后读2.9亿检查,都一个道理,建在共享内存里的bitmap 而已。 位图算法,用含有1千万个位的字符串来表示这个文件,文件中有的数据则标识为1,没有则标识为0,最后从第一位读至最后一位,即为有序的集合。这种算法充分利用了题目中给的条件,但也仅仅适合本题目,(不会有重复的数字,同时不与其余的数进行关联)

2020阿里巴巴校园招聘阿里云C++笔试试题

阿里云C++ 1、(2分)1)请列出两个线程(或进程)死锁的三个必要条件 2)当异常(Exception)发生的时候,智能指针(SmartPointer)的析构函数是被谁调用的? 3)一般的台式机硬盘一次随机读写大约需要多少毫秒(0.1ms、1ms、10ms、100ms)? 4)除了应用程序的系统调用之外,LinuxKernel中的代码在什么情况下还有机会运行? 2、(1分)求下面函数的返回值。输入x的值为2012。 int func(int x) { int countx=0; while(x) { ++countx; x=x&(x-1); } return countx; } 3、(1分)一进程在执行时,如果按下列页号访问:1、2、3、 4、2、1、 5、 6、2、1、2、3、 7、6、3。进程占用4页物理内存,采用FIFO淘汰算法和LRU淘汰算法时,各产生多 少次缺页中断?分别写出使用两种方法时,依次被淘汰的页面号以及最后内存空间中剩余的页面。 4、(1分)写出下列程序的输出结果: #include using name space std; int main() { char *a=”Aliyun”; char **b=&a; *b=”programming test”; char *c=++a; a=”talents.”; return printf(“%c\n,*++c); } 5、(1分)连接A、B两地的公路长240km,现各有一列汽车分别从两地出发相向而行,各自保持匀速50km/h和30km/h。有一鸟儿也和A地的汽车一起从A地出发,以65km/h的速度沿公路朝B地飞行;当它遇到B地的汽车的时候,折返往A飞;再遇到A地汽车的时候,折返往B飞;如此往返。请问当A、B两地出发的汽车相遇的时候,鸟儿飞行了多少km? 6、(1分)一个骰子有6个面,分别是1个1、2个2、3个3。请问平均需要抛多少次骰子才能使1、2、3这三面都至少出现一次。

阿里巴巴笔试题

1.自我介绍 2.介绍一个你所做过的测试项目 3.bug状态的转换,及各状态转换执行人是谁 4.介绍软件测试流程 5.如果你和开发人员出现分歧怎么办 6.如果第二天就到交付日了,回归测试还没有执行完毕,你该怎么办? 7.你有女/男朋友么?你未来如何打算? 8.你还有什么要问我的问题么? 9.我是做功能测试的,功能测试比较枯燥,你怎么认为? 、要对语句A>1 OR B <= 3 测试……(不记得了)100%覆盖,至少要多少测试用例 2、典型的针对系统漏洞的Dos攻击? 3、4,2,2,3,6,15,(?)A,20 B,24 C,25 D,45 4、3升,5升,7升量筒,已知3、5量筒装满水,7量筒为空,问至少要倒多少次才能使其中一个量筒的水为4升 5、太长了 6、太长了 7、保护邮件安全的软件? 8、普通用户执行超级用户文件的指令 9、软件测试对象 10、软件缺陷生命期 11、OPENAPI平台 12、超长字符串攻击属于? 13、项目的最重要的是()和() 14、可能引起Cross Site Scripting攻击的是? 15、马可夫模型(HMM)的三个基础?(非选择) 16、有序集合a, b,求交集(非选择) 转载请注明出自应届生求职招聘论坛https://www.wendangku.net/doc/d68132237.html,/,本贴地址:https://www.wendangku.net/doc/d68132237.html,/thread-33014-1-1.html DBA笔试题 一:SQL tuning 类 1 列举几种表连接方式 等连接、非等连接、自连接、外连接(左、右、全)

2 不借助第三方工具,怎样查看sql的执行计划 I) 使用Explain Plan,查询PLAN_TABLE; EXPLAIN PLAN SET STA TEMENT_ID='QUERY1' FOR SELECT * FROM a WHERE aa=1; SELECT operation, options, object_name, object_type, ID, parent_id FROM plan_table WHERE STA TEMENT_ID = 'QUERY1' ORDER BY ID; II)SQLPLUS中的SET TRACE 即可看到Execution Plan Statistics SET AUTOTRACE ON; 3:如何使用CBO,CBO与RULE的区别 IF 初始化参数OPTIMIZER_MODE = CHOOSE THEN --(8I DEFAULT) IF 做过表分析 THEN 优化器Optimizer=CBO(COST); /*高效*/ ELSE 优化器Optimizer=RBO(RULE); /*高效*/ END IF; END IF; 区别: RBO根据规则选择最佳执行路径来运行查询。 CBO根据表统计找到最低成本的访问数据的方法确定执行计划。 使用CBO需要注意: I) 需要经常对表进行ANALYZE命令进行分析统计; II) 需要稳定执行计划; III)需要使用提示(Hint); 使用RULE需要注意: I) 选择最有效率的表名顺序 II) 优化SQL的写法; 4 如何定位重要(消耗资源多)的SQL 使用CPU多的用户session SELECT a.SID, spid, status, SUBSTR (a.program, 1, 40) prog, a.terminal,a.SQL_TEXT, osuser, V ALUE / 60 / 100 V ALUE FROM v$session a, v$process b, v$sesstat c WHERE c.statistic# = 12 AND c.SID = a.SID AND a.paddr = b.addr ORDER BY V ALUE DESC; 5 如何跟踪某个session的SQL 利用TRACE 跟踪 ALTER SESSION SET SQLTRACE ON; COLUMN SQL format a200; SELECT machine, sql_text SQL

阿里巴巴笔试题答案

第一题选C,不解释吧,按位与就行 第二题选D,不解释,2*3*sizeof(int*)=48(64位机器上是8字节一个指针) 第三题选C,我不确定,不过,应该是的 第四题选D,明显考的是补码 第5题选D,果断访问错误(这是Java的代码) 第6题选B,大家都懂 第7题果断A啊 第8题果断是B,不解释,大家懂 第9题是B,’0’不是’\0’,这个要注意 第10题果断是Fibonacci,显然是C,前几个是0,1,2,3,5,8,13,21 第11题选B,计算量是2^35,现在计算机的主频是2^30,所以差不多是几秒的事 第12题是B,显然有n=4N1+3N3+2N2+N1+1=N4+n3+n2+n1,所以N0=82,不解释 第13题果断是D,这个老题目了,不解释 第14题是C,二分查找嘛,大家都会,不解释 第15题是Fulkerson算法,算出来是46,每一次选一个增广路径即可,直接选不出来为止 第16题选185,显然,它给了120块钱(楼主二了)和一个物品(值65元),所以亏损185 这个题目楼主是这样想的,结果二了 第17题是2,不解释Fermart小定理,2^6 mod 7= 1,所以2^100=2^4=16=2 mod 7 第18题,我觉得是B,不知道对不对,这个不会 第19题,算得不太精细,选了A,不确定。 第20题C,概率与级数运算,不解释 第21题,果断B,D,malloc,new申请到的是Virtual Memory,不过,windows里面还真可以申请到物理内存,用的是VirtualAllocEx API即可

第22题B,C肯定对,D不确定,感觉是对的,不过,没敢选 第23题,其实就是解n^14<10^16,解出n<= 13,所以选14,15(我是推出n<10^(8/7)然后算出n<=13 第24题,D,因为选出第一个是白的,所以位于A的概率是2/3 第25,不可能,需要2.8*10^8 bit,而蓝牙只能传2.4*10^7bit所以一帧需要0.2S 第26题(mnlogn)不解释,归并而已 第27题显然是17分钟 第28,错两个地方1,没考虑只有一个数,2,可能死循环(给你数组0,2,3让查找1)楼主两个都想到了,写的时候忘记了写1,悲剧 第29题,果断SkipList,地球人懂的O(PLogpN)

阿里巴巴2014秋季校园招聘-软件研发工程师笔试题

阿里巴巴2014秋季校园招聘-软件研发工程师笔试题 2013-09-21 22:381089人阅读评论(4)收藏举报 校园招聘阿里巴巴软件研发算法百度 1. 单选题 1. 假设把整数关键码K散列到N个槽列表,以下哪些散列函数是好的散列函数 A: h(K)=K/N; B: h(K)=1; C: h(K)=K mod N; D: h(K)=(K+rand(N)) mod N, rand(N)返回0到N-1的整数 答案:D 2. 下面排序算法中,初始数据集的排列顺序对算法的性能无影响的是: A: 堆排序B:插入排序 C: 冒泡排序D:快速排序 答案:A(插入排序:最优时间复杂度O(n)最差时间复杂度O(n^2)平均时间复杂度O (n^2) 冒泡排序:最优时间复杂度O(n)最差时间复杂度O(n^2)平均时间复杂度O(n^2) 快速排序:最优时间复杂度O(nlogn)最差时间复杂度O(n^2)平均时间复杂度O(nlogn) 堆排序:最优时间复杂度O(nlogn)最差时间复杂度O(nlogn)平均时间复杂度O(nlogn)) 3. 下面说法错误的是: A: CISC计算机比RISC计算机指令多 B: 在指令格式中,采用扩展操作码设计方案的目的是为了保持指令字长不变而增

加寻址空间 C:增加流水线段数理论上可以提高CPU频率 D:冯诺依曼体系结构的主要特征是存储程序的工作方式 答案:B 4. 不属于冯诺依曼体系结构必要组成部分是: A:CPU B: Cache C:RAM D:ROM 答案:B 5. 一个栈的入栈序列式ABCDE则不可能的出栈序列是: A:DECBA B:DCEBA C:ECDBA D:ABCDE 答案:C 6.你认为可以完成编写一个C语言编译器的语言是: A:汇编B:C语言C:VB D:以上全可以 答案:D 7. 关于C++/JAVA类中的static成员和对象成员的说法正确的是:A:static成员变量在对象构造时候生成 B: static成员函数在对象成员函数中无法调用 C: 虚成员函数不可能是static成员函数 D: static成员函数不能访问static成员变量 答案:A 8:

阿里2014年秋招研发试题_附答案

阿里巴巴集团2014校园招聘笔试题 (9月22北京) (答案仅是个人见解,欢迎补充更正,谢谢) 第一部分单选题(前10题,每题2分;后10题,每题3分。选对得满分,选错倒扣1分,不选得0分) 1、一次内存访问,SSD硬盘访问和SATA硬盘随机访问的时间分别是() A、几微秒,几毫秒,几十毫秒 B、几十纳秒,几十微秒,几十毫秒 C、几十纳秒,几十微秒,几十毫秒 D、几微秒,几十微秒,几十毫秒 2、8进制数256,转化成7进制数是(B) A、356 B、336 C、338 D、346 3、某网络的IP地址空间为192.168.5.0/24,采用定长子网划分,子网掩码为255.255.255.248,则该网络的最大子网个数、每个子网内最大可分配地址个数各位(C) A、8,32 B、32,8 C、32,6 D、8,30 4、以下关于链式存储结构说法错误的是(A) A、查找节点时链式存储比顺序存储快 B、每个节点是由数据域和指针域组成 C、比顺序存储结构的存储密度小 D、逻辑上不相邻的节点物理上可能相邻 5、假定一个二维数组的定义语句为“int a[3][4]={{3,4},{2,8,6}};”,则元素a[1][2]的值为(A) A、6 B、4 C、2 D、8 6、下面函数的功能是(C) int fun (char *s) { char *p=s; while(*p++); return p-s-1; }

A、计算字符串的位(bit)数 B、复制一个字符串 C、求字符串的长度 D、求字符串存放的位置 7、判断有向图是否存在回路,利用(A)方法最佳 A、拓扑排序 B、求最短路径 C、求关键路径 D、广度优先遍历 8、依次读入数据元素序列{a,b,c,d,e,f,g}进栈,元素进栈或出栈顺序是未知的,下列序列中,不可能成为栈空时弹出的元素构成序列的有(D) A、{d,e,c,f,b,g,a} B、{c,d,b,e,f,a,g} C、{e,f,d,g,c,b,a} D、{f,e,g,d,a,c,b} 9、下列有关图的遍历说法中,不正确的是(C) A、有向图和无向图都可以进行遍历操作 B、基本遍历算法两种:深度遍历和广度遍历 C、图的遍历必须用递归实现 D、图的遍历算法可以执行在有回路的图中 10、在16位机器上跑下列foo函数的结果是(B) void foo() { int i = 65536; cout << i <<”,”; i = 65535; cout << i; } A、-1,65535 B、0,-1 C、-1,-1 D、0,65535 11、有一段年代久远的C++代码,内部逻辑复杂,现在需要利用其实现一个新的需求,假定有以下可行的方案,应当优先选择(D) A、修改老代码的接口,满足新的需求 B、将老代码抛弃,自己重新实现类似的逻辑 C、修改老代码的内部逻辑,满足新的需求 D、在这段代码之外写一段代码,调用该代码的一些模块,完成新功能需求 12、在5个页框上使用LRU页面替换算法,当页框初始为空时,引用序列为0、1、7、8、6、2、3、7、2、9、8、1、0、2,系统将发生(C)次缺页

阿里巴巴校园招聘笔试题及参考答案

阿里巴巴的Oracle DBA笔试题及参考答案- 数据库基本概念类 1:pctused and pctfree 表示什么含义有什么作用 pctused与pctfree控制数据块是否出现在freelist中, pctfree控制数据块中保留用于update的空间,当数据块中的free space小于pctfree设置的空间时, 该数据块从freelist中去掉,当块由于dml操作free space大于pct_used设置的空间时,该数据库块将 被添加在freelist链表中。 2:简单描述table / segment / extent / block之间的关系 table创建时,默认创建了一个data segment, 每个data segment含有min extents指定的extents数, 每个extent据据表空间的存储参数分配一定数量的blocks 3:描述tablespace和datafile之间的关系 一个tablespace可以有一个或多个datafile,每个datafile只能在一个tablespace内, table中的数据,通过hash算法分布在tablespace中的各个datafile中, tablespace是逻辑上的概念,datafile则在物理上储存了数据库的种种对象。 4:本地管理表空间和字典管理表空间的特点,ASSM有什么特点 本地管理表空间(Locally Managed Tablespace简称LMT) 8i以后出现的一种新的表空间的管理模式,通过位图来管理表空间的空间使用。 字典管理表空间(Dictionary-Managed Tablespace简称DMT) 8i以前包括以后都还可以使用的一种表空间管理模式,通过数据字典管理表空间的空间使用。 动段空间管理(ASSM), 它首次出现在Oracle920里有了ASSM,链接列表freelist被位图所取代,它是一个二进制的数组, 能够迅速有效地管理存储扩展和剩余区块(free block),因此能够改善分段存储本质,ASSM表空间上创建的段还有另外一个称呼叫Bitmap Managed Segments(BMB 段)。 5:回滚段的作用是什么 事务回滚:当事务修改表中数据的时候,该数据修改前的值(即前影像)会存放在回滚段中, 当用户回滚事务(ROLLBACK)时,ORACLE将会利用回滚段中的数据前影像来将修改的数据恢复到原来的值。 事务恢复:当事务正在处理的时候,例程失败,回滚段的信息保存在undo表空间中,ORACLE将在下次打开数据库时利用回滚来恢复未提交的数据。 读一致性:当一个会话正在修改数据时,其他的会话将看不到该会话未提交的修改。 当一个语句正在执行时,该语句将看不到从该语句开始执行后的未提交的修改(语句级读一致性) 当ORACLE执行Select语句时,ORACLE依照当前的系统改变号(SYSTEM CHANGE NUMBER-SCN) 来保证任何前于当前SCN的未提交的改变不被该语句处理。可以想象:当一个长时间的查询正在执行时, 若其他会话改变了该查询要查询的某个数据块,ORACLE将利用回滚段的数据前影像来构造一个读一致性视图。 6:日志的作用是什么

阿里P7笔试题

1.junit 用法,before,beforeClass,after, afterClass 的执行顺序 2.分布式锁 3.nginx 的请求转发算法,如何配置根据权重转发 4.用hashmap 实现redis 有什么问题(死锁,死循环,可用 ConcurrentH ashmap) 5.线程的状态 6.线程的阻塞的方式 7.sleep 和wait 的区别 8.hashmap 的底层实现 9.一万个人抢100 个红包,如何实现(不用队列),如何保证2 个人不 能抢 到同一个红包,可用分布式锁 10.java 内存模型,垃圾回收机制,不可达算法 11.两个Integer 的引用对象传给一个swap 方法在方法内部交换引用,返 回 后,两个引用的值是否会发现变化 12.aop 的底层实现,动态代理是如何动态,假如有100 个对象,如何动 态 的为这100 个对象代理 13.是否用过maven install。maven test。git(make install 是安装本 地jar 包) 14.tomcat 的各种配置,如何配置docBase 15.spring 的bean 配置的几种方式 16.web.xml 的配置 17.spring 的监听器。 18.zookeeper 的实现机制,有缓存,如何存储注册服务的 19.IO 会阻塞吗?readLine 是不是阻塞的 20.用过spring 的线程池还是java 的线程池? 21.字符串的格式化方法(20,21 这两个问题问的太低级了) 22.时间的格式化方法 23.定时器用什么做的 24.线程如何退出结束 25.java 有哪些锁?乐观锁悲观锁synchronized 可重入锁读写锁,用过r eentrantlock 吗?reentrantlock 与synmchronized 的区别 26.ThreadLocal 的使用场景 27.java 的内存模型,垃圾回收机制 28.为什么线程执行要调用start 而不是直接run(直接run,跟普通方法 没 什么区别,先调start,run 才会作为一个线程方法运行) 29.qmq 消息的实现机制(qmq 是去哪儿网自己封装的消息队列) 30.遍历hashmap 的三种方式 31.jvm 的一些命令 32.memcache 和redis 的区别

阿里巴巴2017实习生笔试题(含答案)

答案:D 内联函数: Tip:只有当函数只有 10 行甚至更少时才将其定义为内联函数. 定义: 当函数被声明为内联函数之后, 编译器会将其内联展开, 而不是按通常的函数调用机制进行调用. 优点: 当函数体比较小的时候, 内联该函数可以令目标代码更加高效. 对于存取函数以及其它函数体比较短, 性能关键的函数, 鼓励使用内联. 缺点: 滥用内联将导致程序变慢. 内联可能使目标代码量或增或减, 这取决于内联函数的大小. 内联非常短小的存取函数通常会减少代码大小, 但内联一个相当大的函数将戏剧性的增加代码大小. 现代处理器由于更好的利用了指令缓存, 小巧的代码往往执行更快。 结论: 一个较为合理的经验准则是, 不要内联超过 10 行的函数. 谨慎对待析构函数, 析构函数往往比其表面看起来要更长, 因为有隐含的成员和基类析构函数被调用! 另一个实用的经验准则: 内联那些包含循环或switch 语句的函数常常是得不偿失 (除非在大多数情况下, 这些循环或 switch 语句从不被执行). 注意:有些函数即使声明为内联的也不一定会被编译器内联, 这点很重要; 比如虚函数和递归函数就不会被正常内联. 通常, 递归函数不应该声明成内联函数.(递归调用堆栈的展开并不像循环那么简单, 比如递归层数在编译时可能是未知的, 大多数编译器都不支持内联递归函数). 虚函数内联的主要原因则是想把它的函数体放在类定义内, 为了图个方便, 抑或是当作文档描述其行为, 比如精短的存取函数.

-inl.h文件: Tip:复杂的内联函数的定义, 应放在后缀名为 -inl.h 的头文件中. 内联函数的定义必须放在头文件中, 编译器才能在调用点内联展开定义. 然而, 实现代码理论上应该放在 .cc 文件中, 我们不希望 .h 文件中有太多实现代码, 除非在可读性和性能上有明显优势. 如果内联函数的定义比较短小, 逻辑比较简单, 实现代码放在 .h 文件里没有任何问题. 比如, 存取函数的实现理所当然都应该放在类定义内. 出于编写者和调用者的方便, 较复 杂的内联函数也可以放到 .h 文件中, 如果你觉得这样会使头文件显得笨重, 也可以把它萃取到单独的-inl.h 中. 这样把实现和类定义分离开来, 当需要时包含对应的 -inl.h 即可。 A 项错误,因为使用inline 关键字的函数只是用户希望它成为内联函数,但编译器有 权忽略这个请求,比如:若此函数体太大,则不会把它作为内联函数展开的。 B 项错误,头文件中不仅要包含inline 函数的声明,而且必须包含定义,且在定义时 必须加上inline 。【关键字inline 必须与函数定义体放在一起才能使函数成为内联,仅将inline 放在函数声明前面不起任何作用】 C 项错误,inline 函数可以定义在源文件中,但多个源文件中的同名inline 函数 的实现必须相同。一般把inline 函数的定义放在头文件中更加合适。 D 项正确,类内的成员函数,默认都是inline 的。【定义在类声明之中的成员函数将

阿里巴巴编码规范(Java)题库

多选 1.如何处理单元测试产生的数据,下列哪些说法是正确的?ABC A .测试数据入库时加特殊前缀标识。 B .测试数据使用独立的测试库。 C .自动回滚单元测试产生的脏数据。 D .无须区别,统一在业务代码中进行判断和识别。 多选 2.关于并发处理,下列哪些说法符合《阿里巴巴Java开发手册》:ABC A .线程资源必须通过线程池提供,不允许在应用中自行显式创建线程。 B .同步处理时,能锁部分代码区块的情况下不要锁整个方法;高并发时,同 步调用应该考虑到性能损耗。 C .创建线程或线程池时,推荐给线程指定一个有意义的名称,方便出错时回溯。 D .推荐使用Executors.newFixedThreadPool(int x)生成指定大小的线程池。(线程池不允许使用 Executors 去创建,而是通过 ThreadPoolExecutor 的方式) 多选 3.下列哪些说法符合《阿里巴巴Java开发手册》:ACD A .对于“明确停止使用的代码和配置”,如方法、变量、类、配置文件、动 态配置属性等要坚决从程序中清理出去,避免造成过多垃圾。 B .永久弃用的代码段注释掉即可,即不用加任何注释。 C .对于暂时被注释掉,后续可能恢复使用的代码片断,在注释代码上方,统 一规定使用三个斜杠(///)来说明注释掉代码的理由。 D .不要在视图模板中加入任何复杂的逻辑。 多选 4.关于分页查询,下列哪些说法符合《阿里巴巴Java开发手册》:ABC A .分页查询,当统计的count为0时,应该直接返回,不要再执行分页查询 语句。 B .iBATIS自带的queryForList(String statementName,int start,int size)分页接口有性能隐患,不允许使用。 C .定义明确的sql查询语句,通过传入参数start和size来实现分页逻辑。 D .可使用存储过程写分页逻辑,提高效率。

产品类面试真题阿里笔试非技术岗

产品类面试真题 Q:你的互联网项目产品经历 Tips:具体小问题包括:①如何发现的需求?②如何开展项目?③产品有什么问题?④如何解决?⑤团队组成?如何分工?⑥担当角色发挥的作用?答:从产品定位、功能、解决 Q:说出你印象最深刻的项目? Tips:从项目内容,你在当中的作用,你的收获谈起。当中出现的问题、数据调查、运营手段、取得成果等角度来谈。之后面试官会从中问下实施细节,说的时候最好可以体现你在团队中的职务,取得的效果,从中的收获? Q:你觉得90后身上具备什么素质? A:首先,具备什么素质因人而异。但大部分90后,平均智商偏高(受到良好的教育);对新鲜事物的接受能力较强;乐天派,有激情,有活力。 Tips:这是一道考情商的题,不要说的太极端就好, Q:简单的谈谈你的实习经历? Tips:如果你做过产品相关工作,就谈这个,如果没有,就谈产品经理应该具备的一些能力所对应的经历。 Q:你对产品经理的理解 A1:产品经理是生孩子的,运营是养孩子的。是一个团队的粘合剂,将各个部门联系到一起。 A2:产品经理是一个非常典型的“门槛在里面”的岗位,看上去谁都能做,其实个体间能力的相差能够非常之大。个人觉得对这个问题的回答,很大程度上就决定了此次面试的结果,建议大家看一看《启示录:打造用户喜爱的产品》和《腾讯方法》这两本书以加深理解。 个人建议可以从这么几个方向入手:产品经理是做啥的、产品经理需要具备哪些能力、产品经理对于整个团队的重要性、产品经理的自我完善与成长路径、自身条件与产品经理职位需求的契合度。 Tips: ①我理解的PM需要具备:需求挖掘,数据分析,团队沟通,执行力等方面的能力~ ②为什么要做PM:从a自己的愿景、b能力与岗位的匹配、c提升能力,这三个角度回答问题。 做产品的大前提是要喜欢产品,不然将来你痛苦,团队痛苦,用户也痛苦,是不是?网络

相关文档
相关文档 最新文档