2026年软件开发工程师面试题及答案.docxVIP

  • 5
  • 0
  • 约6.56千字
  • 约 20页
  • 2026-06-15 发布于福建
  • 举报

第PAGE页共NUMPAGES页

2026年软件开发工程师面试题及答案

一、编程语言基础(5题,每题10分,共50分)

1.题目:

请用Python编写一个函数,接收一个字符串作为输入,返回该字符串中所有唯一的字符及其出现次数。例如,输入`hello`,输出应为`{h:1,e:1,l:2,o:1}`。

答案:

python

defunique_chars(s):

char_count={}

forcharins:

char_count[char]=char_count.get(char,0)+1

return{k:vfork,vinchar_count.items()ifv==1}

解析:

-使用字典`char_count`统计每个字符的出现次数。

-遍历输入字符串,若字符已存在于字典中,则计数加1;否则,初始化为1。

-最后通过列表推导式筛选出现次数为1的字符,返回结果。

2.题目:

请解释Java中的`volatile`关键字的作用,并说明它与`synchronized`的区别。

答案:

`volatile`关键字确保变量的可见性和有序性,但不保证原子性。具体作用如下:

-可见性:当一个线程修改了volatile变量的值,其他线程能够立即看到该变化。

-有序性:禁止指令重排序,确保volati

文档评论(0)

1亿VIP精品文档

相关文档