60*13薪,外包到新疆...去吗?

2024-05-09 06:04
文章标签 13 60 外包 新疆

本文主要是介绍60*13薪,外包到新疆...去吗?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

大家好,我是白露呀。

今天我在牛客上看到一篇帖子,一位网友说自己收到一个 offer ,薪资很高:60k*13,大约一年有近80万。

但是有个要求是外包到新疆的乌鲁木齐,他拿不定主意,就在牛客上发了这个帖子。

然后这个“凡尔赛式”的发言就把网友们给搞懵了,纷纷留下了他们的“祝福”,有网友说**“外派月球都可以”**。

img

还有网友说“别说新疆,让我去西伯利亚喂狼都行”、“**6万,把我派到国外我都愿意”。

img

总而言之,大伙对这位网友的遭遇都表示强烈的羡慕。

在我看来,如果是刚毕业的同学,或者急需用钱的同学,并且对地域并没有强烈要求的话,这个岗位完全可以接受。

毕竟乌鲁木齐是新疆的省会城市,完全可以挣几年钱再考虑一直定居还是跳槽去其他的城市。

白露我一直没有去过新疆,但是家里有亲戚在新疆做过几年生意,听他们说新疆其实挺舒服的,景色优美,就是一开始去高反有点受不了。

今天我给大家带来一篇面经,正好是乌鲁木齐一个小厂的面试,总的来说,大部分考查的八股文知识,各位同学可以收藏、阅读、练习、划线!春招再冲刺一波!

面经开始

面试官: 首先,告诉我你学过哪些数据结构

求职者: 我学过的数据结构包括数组链表队列哈希表二叉树红黑树等。这些数据结构是计算机科学中的基础,它们在解决各种算法问题中都有广泛应用。

面试官: 很好。那你能解决N皇后问题吗?

求职者: 是的,N皇后问题是一个经典的回溯算法问题,其目标是将N个皇后放置在N*N的棋盘上,使得它们彼此不能相互攻击。我会使用一个递归函数来尝试每一行的每一个位置,通过检查列和对角线上是否已经有皇后来保证不会相互攻击。

面试官: 你学过哪些数据库

求职者: 我学过关系型数据库MySQLPostgreSQL,了解它们的基本操作和一些优化技巧。我也熟悉非关系型数据库,比如MongoDBRedis,理解它们的数据模型和适用场景。

面试官: 谈谈事务的四大特性

求职者: 事务的四大特性原子性一致性隔离性持久性。原子性保证事务中的操作要么全部成功,要么全部失败;一致性确保事务执行后数据库从一个合法状态转移到另一个合法状态;隔离性保证并发事务之间不会互相影响;持久性则是指事务一旦提交,其结果就会永久保存。

面试官: 那么,如何保证事务的四大特性

求职者: 数据库管理系统通常通过锁机制日志记录隔离级别来保证事务的ACID特性。比如,通过锁来实现隔离性,通过写入undo log和redo log来实现原子性和持久性。

面试官: 你了解索引的底层实现吗?

求职者: 是的,大多数数据库的索引是使用B+树实现的。B+树是一种平衡多路查找树,它可以保持数据排序,而且由于其广泛的分支,可以减少磁盘I/O操作,提高查询效率。

面试官: 如果查询一个表中的数据很慢,可能是什么原因?你会怎么解决?

求职者: 查询慢可能是由于缺乏有效的索引、数据量过大、磁盘I/O瓶颈或查询语句不够优化等原因造成的。我会先检查执行计划,检查是否有合适的索引,然后考虑是否需要优化查询语句或调整数据库的配置。

面试官: 你在Redis中用过哪些数据结构?怎么用的?

求职者: 在Redis中我使用过字符串哈希列表集合有序集合。比如,我会使用列表来实现队列,用集合来处理去重,使用有序集合来做范围查询和排行榜等功能。

面试官: 你了解Redis的持久化吗?

求职者: 是的,Redis提供了RDBAOF两种持久化机制。RDB会在指定的时间间隔内生成数据快照,而AOF则记录每次写操作,可以提供更好的持久性保证。

面试官: 在你的项目中,你是如何解决数据一致性问题的?你提到了两种方案,最终使用了哪一种?

求职者: 在我的项目中,最初我们使用了删除缓存和修改数据库的方式来保证一致性,但后来我们发现使用延迟队列加上双删的方案更加有效,因此我们最终采用了后者。

面试官: 如果Redis满了会发生什么?

求职者: 如果Redis满了,它将根据配置的淘汰策略来移除一些键,比如LRU(最近最少使用)策略。如果没有合适的淘汰策略,Redis可能会拒绝写操作。

面试官: 你有实现过LRU或LFU吗?

求职者: 是的,我实现过LRU,它可以通过结合HashMap双向链表来实现。我还了解LFU的概念,它通常需要两个HashMap加上链表来跟踪使用频率。

**LFU(Least Frequently Used,最不经常使用)LRU(Least Recently Used,最近最少使用)**都是缓存淘汰算法。

  • LFU根据数据被访问的次数来决定淘汰哪些数据。具体来说,它会淘汰访问次数最少的数据。如果存在多个访问次数相同的数据,可能会根据具体实现来选择淘汰哪一个。LFU的核心在于维护一个按访问频率排序的数据结构,以便快速找到访问次数最少的数据。
  • LRU则是根据数据的访问时间来决定淘汰哪些数据。最近最少使用的数据(即最长时间没有被访问的数据)首先被淘汰。LRU通常使用一个链表来实现,链表的头部是最近访问的数据,尾部是最久未访问的数据。

实现LRU缓存,一种简单的方法是使用LinkedHashMap,因为LinkedHashMap内部已经实现了按访问顺序的排序功能。:

import java.util.LinkedHashMap;
import java.util.Map;public class LRUCache<K, V> extends LinkedHashMap<K, V> {private final int capacity;public LRUCache(int capacity) {// 设置accessOrder为true,使LinkedHashMap按访问顺序排序super(capacity, 0.75f, true);this.capacity = capacity;}@Overrideprotected boolean removeEldestEntry(Map.Entry<K, V> eldest) {// 当缓存项数量超过容量时,移除最老的数据return size() > capacity;}public static void main(String[] args) {LRUCache<Integer, String> cache = new LRUCache<>(3);cache.put(1, "a");cache.put(2, "b");cache.put(3, "c");System.out.println(cache.keySet()); // [1, 2, 3]cache.get(1); // 访问数据1cache.put(4, "d"); // 添加数据4,导致数据2被淘汰System.out.println(cache.keySet()); // [3, 1, 4]}
}

这个LRUCache类继承自LinkedHashMap,并重写了removeEldestEntry方法。这个方法会在每次添加新元素后调用,如果返回true,则会移除最老的元素(此处的"最老"是指最久未被访问的元素)。通过调整accessOrder参数,我们使LinkedHashMap按访问顺序而非插入顺序排序。当缓存的大小超过了其容量时,最久未访问的元素(即链表的尾部元素)会被移除。这样,我们就实现了一个简单的LRU缓存。

面试官: 很好,今天的面试就到这,后续会有人联系你的。

这篇关于60*13薪,外包到新疆...去吗?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/972580

相关文章

Java进阶13讲__第12讲_1/2

多线程、线程池 1.  线程概念 1.1  什么是线程 1.2  线程的好处 2.   创建线程的三种方式 注意事项 2.1  继承Thread类 2.1.1 认识  2.1.2  编码实现  package cn.hdc.oop10.Thread;import org.slf4j.Logger;import org.slf4j.LoggerFactory

13 transition数组的动画使用

划重点 动画:transitiontransition-group :数组动画数组的 添加 / 删除 豆腐粉丝汤 清淡又健康 <!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><me

【CTF Web】BUUCTF Upload-Labs-Linux Pass-13 Writeup(文件上传+PHP+文件包含漏洞+PNG图片马)

Upload-Labs-Linux 1 点击部署靶机。 简介 upload-labs是一个使用php语言编写的,专门收集渗透测试和CTF中遇到的各种上传漏洞的靶场。旨在帮助大家对上传漏洞有一个全面的了解。目前一共20关,每一关都包含着不同上传方式。 注意 1.每一关没有固定的通关方法,大家不要自限思维! 2.本项目提供的writeup只是起一个参考作用,希望大家可以分享出自己的通关思路

Chapter 13 普通组件的注册使用

欢迎大家订阅【Vue2+Vue3】入门到实践 专栏,开启你的 Vue 学习之旅! 文章目录 前言一、组件创建二、局部注册三、全局注册 前言 在 Vue.js 中,组件是构建应用程序的基本单元。本章详细讲解了注册和使用 Vue 的普通组件的两种方式:局部注册和全局注册。 本篇文章参考黑马程序员 一、组件创建 ①定义 Vue 组件是一种具有特定功能的 Vue 实

VMware Fusion Pro 13 Mac版虚拟机 安装Win11系统教程

Mac分享吧 文章目录 Win11安装完成,软件打开效果一、VMware安装Windows11虚拟机1️⃣:准备镜像2️⃣:创建虚拟机3️⃣:虚拟机设置4️⃣:安装虚拟机5️⃣:解决连不上网问题 安装完成!!! Win11安装完成,软件打开效果 一、VMware安装Windows11虚拟机 首先确保自己的mac开启了网络共享。不然虚拟机连不上👀的 1️⃣:准备镜像

华为 HCIP-Datacom H12-821 题库 (13)

有需要题库的可以看主页置顶 1.可以携带外部路由的 tag 标签信息的是以下哪一类 LSA? A、4 类 LSA B、5 类 LSA  C、3 类 LSA  D、2 类 LSA 答案:B 解析: 暂无解析 2..两台路由器直连,并设定网络类型为 p2p 建立OSPF 邻居。那么两台路由器传输 OSPF 报文的目的 IP 地址是以下哪一项? A、使用组播地址 224.0.0.6 B

[情商-13]:语言的艺术:何为真实和真相,所谓真相,就是别人想让你知道的真相!洞察谎言与真相!

目录 前言: 一、说话的真实程度分级 二、说谎动机分级:善意谎言、中性谎言、恶意谎言 三、小心:所谓真相:只说对自己有利的真相 四、小心:所谓真相:就是别人想让你知道的真相 五、小心:所谓善解人意:就是别人只说你想要听到的话 前言: 何为真实和真相,所谓真相,就是别人想让你知道的真相!洞察谎言与真相! 人与人交流话语中,处处充满了不真实,完全真实的只是其中一小部分,这

C++笔试强训12、13、14

文章目录 笔试强训12一、选择题1-5题6-10题 二、编程题题目一题目二 笔试强训13一、选择题1-5题6-10题 二、编程题题目一题目二 笔试强训14一、选择题1-5题6-10题 二、编程题题目一题目二 笔试强训12 一、选择题 1-5题 引用:是一个别名,与其被引用的实体公用一份内存空间,编译器不会给引用变量单独开辟新的空间。A错误 故选A。 A

java基础总结13-面向对象9(对象转型)

对象转型分为两种:一种叫向上转型(父类对象的引用或者叫基类对象的引用指向子类对象,这就是向上转型),另一种叫向下转型。转型的意思是:如把float类型转成int类型,把double类型转成float类型,把long类型转成int类型,这些都叫转型。把一种形式转成另外一种形式就叫转型。除了基础数据类型的转型之外(基础数据类型的转型:大的可以转成小的,小的也可以转成大的。),对象领域里面也有对象之

【MyBatis学习13】MyBatis中的二级缓存

1. 二级缓存的原理 前面介绍了,mybatis中的二级缓存是mapper级别的缓存,值得注意的是,不同的mapper都有一个二级缓存,也就是说,不同的mapper之间的二级缓存是互不影响的。为了更加清楚的描述二级缓存,先来看一个示意图: 从图中可以看出: 1.sqlSession1去查询用户id为1的用户信息,查询到用户信息会将查询数据存储到该UserMapper的二级缓存中。2.