📜  微软面试体验|套装53

📅  最后修改于: 2021-05-04 17:28:54             🧑  作者: Mango

第0轮–
BST中的第二个最大元素

对整数数组进行排序,使–
–所有奇数均位于左侧,并按升序排序。
–所有偶数均按降序排序,并从奇数结束处开始。
例如–
I / P – 2、3、4、5、8、10、12、11
O / P – 3、5、11、12、10、8、4、2

我使用了快速排序分区逻辑来分离奇数和偶数,然后在两个半部分上都进行了快速排序。

第1轮 –
假定一个大小为1024字节的RAM。系统上正在运行多个进程。您的应用程序将获得此信息–
(线程ID,内存块,时间,R / W)–本质上告诉线程T在时间t正在使用内存块M,并且可以读取或写入操作。

内存冲突定义为–
–令x为时间的标准计量单位。
–在同一位置的多次读取操作不会引起冲突。
–在x + 5到x-5之间对位置M进行一次写操作将导致线程在时间x访问位置M发生冲突。
–示例–如果线程T1在时间x + 1访问了存储单元M,并且线程T2在时间x + 6之前访问了存储单元M,则在给定其中之一的情况下T1和T2是冲突的候选者,然后执行写操作。

给出了访问内存位置的线程列表,您必须查找冲突。

例子 –
(1,512,1,R)
(2,432,2,W)
(3,512,3,R)
(4,932,4,R)
(5、512、5,W)
(6,932,6,R)
(7,835,7,R)
(8,432,8,R)

O / P –
线程1和3与线程5冲突
所有其他操作都是安全的。

第二轮–
https://www.geeksforgeeks.org/turn-an-image-by-90-degree/

级别顺序遍历->
使用队列
使用递归

第三回合–
http://stackoverflow.com/questions/746082/how-to-find-list-of-possible-words-from-a-letter-matrix-boggle-solver
>我的解决方案是对此进行更改– https://www.geeksforgeeks.org/mobile-numeric-keypad-problem/

第四轮–
3D立体解算器和3D跨字解算器。
设计数据结构以存储并给出解决方案。

Microsoft的所有练习题!