`

练习:面试题解题(不断更新....)

 
阅读更多

使用java(groovy来写) 毕竟目的是为了代码的精短

自己做练习的 不一定是对的 如有错误欢迎拍脸

 

48、找出数组中唯一的重复元素

1-1000放在含有1001个元素的数组中,只有唯一的一个元素值重复,其它均只出现一次.
每个数组元素只能访问一次,设计一个算法,将它找出来;不用辅助存储空间,
能否设计一个算法实现?

来自:http://blog.csdn.net/v_JULY_v/article/details/6234496

解法 其实很简单的...把那1001个元素加起来然后减去1+2+...+1000就可以了

解法:

def arr=new int[1001];
arr=arr.collect({i -> -1}) //初始化数据
def r=new Random();
int dup=r.nextInt(1000)+1; //选中一个元素重复 1~1000
arr[r.nextInt(arr.size())]=dup; //确定重复的位置
for(def i=1;i<=1000;i++)
{
 def loc=r.nextInt(arr.size());
 while(arr[loc]!=-1)
 {
  loc=(loc+1)%arr.size();
 }
 arr[loc]=i;
}
println dup
arr.inject(0,{sum,value -> sum+value})-(1+1000)/2*1000

 

 

 

3、给出一个函数来输出一个字符串的所有排列。
来自:http://blog.csdn.net/v_JULY_v/article/details/6234496

代码直接输出 所以字符串如果有重复的元素就会有重复的结果 长一点的字符串会让这个程序挂掉,,  

 

void sort(remain,newString){
  if(remain=="") println newString
  for(int i=0;i<remain.length();i++)
  {
    sort(remain-remain[i],newString+remain[i])
  }
}

sort("AbcDe","")

 话说groovy中对String + -操作的支持真的很方便啊...

 

 

  1. 9月5日,华为2014校园招聘的机试题目
    通过键盘输入一串小写字母(a~z)组成的字符串。请编写一个字符串压缩程序,将字符串中连续出席的重复字母进行压缩,并输出压缩后的字符串。
    压缩规则:
        1、仅压缩连续重复出现的字符。比如字符串"abcbc"由于无连续重复字符,压缩后的字符串还是"abcbc"。
        2、压缩字段的格式为"字符重复的次数+字符"。例如:字符串"xxxyyyyyyz"压缩后就成为"3x6yz"。
    要求实现函数: 
         void stringZip(const char *pInputStr, long lInputLen, char *pOutputStr);
        输入pInputStr:  输入字符串lInputLen:  输入字符串长度
        输出 pOutputStr: 输出字符串,空间已经开辟好,与输入字符串等长;
    注意:只需要完成该函数功能算法,中间不需要有任何IO的输入输出
    示例 
        输入:“cccddecc”   输出:“3c2de2c”
        输入:“adef”     输出:“adef”
        输入:“pppppppp” 输出:“8p”
来自:http://blog.csdn.net/v_july_v/article/details/11921021#comments

原文使用C++的吧 我还是用groovy来做 这个是个很经典的压缩算法 叫什么来着忘记了..

只要注意最后还需要一次判断就好了

def stringZip=
{
 s->
  def oldC=""
  def count=0
  def newString=""
  for(def i=0;i<s.length();i++)
  {
   if(s[i]==oldC)
   {
    count++;
   }
   if(s[i]!=oldC){ 
     if(count<=1){
      newString+=oldC;
     }else{
      newString+=count+oldC;
     }
     count=1;
     oldC=s[i]
   }
  }
  //这边额外多一次 
  if(count<=1){
      newString+=oldC;
     }else{
      newString+=count+oldC;
  }
  return newString
}
println stringZip("cccddecc")
println stringZip("adef")
println stringZip("xxxyyyyyyz")
println stringZip("pppppppp")

 

 

分享到:
评论

相关推荐

    uniapp+unicloud 随机题库 在线答题 排行榜 专属用户 观众登录 判断题 多选 单选题

    uniapp 云开发 在线答题 排行榜 专属用户 观众登录 微信分享 源码销售+二次开发+部署 适合中小企业举办线上、线下答题,排行榜排名 在线预览:http://louboutin.v2code.cn/red2 图片预览: ... 1.配置简易后台,可设置...

    2024年tensorflow面试题必问.zip

    内容概要:本面试题涵盖了各种类型的技术面试题,包括编程语言、算法、数据结构、操作系统、计算机网络、数据库等多个方面。...此外,本面试题还将持续更新和优化,以适应不断变化的技术面试趋势和要求。

    (2021-2022年收藏)医疗卫生系统面试:综合分析题备考指导.doc

    【医疗卫生系统面试】中的【综合分析题】是面试备考的核心环节,因其占据约48%的考查比例,...考生应充分准备,既要广泛涉猎时政,又要深度理解医疗行业,通过实际练习提高答题质量和应变能力,从而在面试中脱颖而出。

    浙江公务员面试资料:公务员面试流程详解.doc

    - 对于结构化面试,考生应多做模拟题,训练答题速度和逻辑性,提高语言表达的流畅度。 - 对于无领导小组讨论,考生应参与角色扮演练习,提高团队协作和领导能力,学会在讨论中有效地表达自己的观点。 - 注重情绪管理...

    知名互联网公司软件测试面试题+笔试题.zip

    这份压缩包文件"知名互联网公司软件测试面试题+笔试题.zip"包含了丰富的资源,旨在帮助求职者全面了解并掌握软件测试的基本概念、技术和实战经验。以下是根据提供的文件名分析出的相关知识点: 1. **软件测试基础**...

    2022年四川省公务员面试:经典试题资料.pdf

    - 对于初次面试的考生,要敢于表达,多做练习以增强自信和镇定。 - 关注国家大事,通过观看新闻了解时事,培养对热点问题的思考和理解。 - 提高全面性和客观性,锻炼组织协调能力和人际关系处理能力。 - 学习从...

    国家公务员面试:材料题审题规则.docx

    国家公务员考试网站等资源提供了丰富的面试经验,可帮助考生不断熟悉审题技巧和答题策略。 总的来说,国家公务员面试中的材料题审题规则主要包括:1)整体把握题目间的关系;2)深入理解材料内容与结构;3)迅速整理...

    2015年赤水事业单位面试练习题(94).rar

    标题"2015年赤水事业单位面试练习题(94).rar"揭示了这个压缩包文件的主要内容,它是一份针对2015年赤水市事业单位招聘考试的面试练习题目集。"94"可能是系列练习题的编号,意味着这可能是该系列中的第94套题目,表明...

    笔试/面经的概要介绍与分析

    1. **LeetCode**:一个非常受欢迎的在线平台,提供了大量的编程题和算法挑战,非常适合准备技术面试。 - 链接:https://leetcode.com/ 2. **HackerRank**:提供了广泛的编程挑战,涵盖了多种语言和技术领域,包括...

    公务员面试公务员面试陷阱类面试题解题诀窍.pdf

    下面将详细阐述这类面试题的特征、类型及其解题诀窍。 首先,陷阱类面试题的特征主要有三个方面: 1. 引导性题干:这类题目会在题干中设置预设情境,引导考生朝着不利的方向回答。例如,“在什么情况下你会放弃...

    公务员面试题辅导笔记参照.pdf

    在准备阶段,模拟练习是提高表现的关键,可以通过背诵典型例题答案来熟悉答题模式,并在真实环境中进行模拟,以减少实际面试时的紧张感。即使初期遇到困难,也要勇于开口,不断练习以提升表达能力。 面试不仅是对...

    广西公务员面试辅导:情景模拟解题技巧.doc

    【广西公务员面试辅导:情景模拟解题技巧】 在公务员面试中,情景模拟题是一种新兴的考核...在准备公务员面试时,考生应熟练掌握这一解题技巧,通过模拟练习提升自己的应变和沟通能力,以便在面试中展现出色的表现。

    HW机考攻略1

    5. **排列组合**:这两题,如leetcode 面试题08.08.有重复字符串的排列组合和leetcode 77.组合,都涉及组合数学和数组的遍历。 6. **双指针**:双指针技术在题目中用于解决特定问题,如leetcode 674.最长连续递增...

    无领导小组讨论面试真题分类精讲二.pdf

    ### 无领导小组讨论面试知识点详解 #### 一、无领导小组讨论概述 无领导小组讨论是一种常见的面试形式,通过情景模拟...通过不断练习和完善,可以在无领导小组讨论中更加自信地展现自我,为职业发展打下坚实的基础。

    面试算法题及技巧.zip

    在准备面试时,掌握算法题和解题技巧是至关重要的,尤其在IT行业中,这往往决定着面试者是否能成功获得心仪的工作。本资源“面试算法题及技巧.zip”包含了丰富的面试经验,可以帮助你提升应对算法挑战的能力。下面,...

    公务员面试指导:计划组织协调能力类面试题的应对技巧.pdf

    【公务员面试】中的【计划组织协调能力】是评估考生处理实际工作问题的关键能力之一,尤其在国家公务员考试中,这种题型十分常见。...考生在面试前应充分准备,通过模拟练习来提高应对这类问题的能力。

    google面试题.pdf

    ### Google面试题解析 #### 一、一辆校车能装下多少个高尔夫球? **职位:** 产品经理 **解析:** 这类问题考察应聘者的逻辑思维能力和数学估算能力。解题步骤如下: 1. **估计尺寸:** 先估计一辆标准校车的...

    C语言基础练习面试题

    本资源“C语言基础练习面试题”是针对初学者和有一定经验的开发者设计的一系列练习,旨在帮助他们巩固C语言基础知识,提升编程技能,并为面试做好准备。 在C语言的基础部分,这些练习涵盖了以下几个关键知识点: 1...

    公务员考试面试技巧:如何化解矛盾题.doc

    在公务员考试面试中,尤其是招警考试面试环节,面试官会设计各种情景性问题来考察考生的应变能力和处理矛盾的能力。...通过不断练习和模拟,考生可以在面试中更加自如地应对各种挑战,展现出自己的职业素养和潜力。

    C语言字符串练习(习题+答案).zip

    本资源"《C语言字符串练习(习题+答案).zip》"正是针对这一需求而准备的,它包含了C语言字符串操作的专项练习题和对应的答案,帮助学习者巩固和提升在字符串处理方面的技能。 字符串在C语言中扮演着重要角色,它们...

Global site tag (gtag.js) - Google Analytics