首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Scala 使用IDEA 对list的常见操作

package test object listDemo {   def main(args: Array[String]): Unit = {     val list: List[String] = List("a", "b" ,"a")     //为列表预添加元素     println("A" +: list)     //在列表开头添加元素     println("c" :: list)     //在列表开头添加指定列表的元素     println(List("d","e") ::: list)     //复制添加元素后列表     println(list :+ "1")     //将列表的所有元素添加到 StringBuilder     val sb = new StringBuilder("f")     println(list.addString(sb))     //指定分隔符     println(list.addString(sb,","))     //通过列表索引获取元素     println(list.apply(0))     //检测列表中是否包含指定的元素     println(list.contains("a"))     //将列表的元素复制到数组中,在给定的数组xs中填充该列表的最多为长度(len)元素,从start位置开始。     val a = Array('a', 'b', 'c')     val b : Array[Char] = new Array(5)     a.copyToArray(b,0,1)     b.foreach(println)     //去除列表的重复元素,并返回新列表     println(list.distinct)     //丢弃前n个元素,并返回新列表     println(list.drop(1))     //丢弃最后n个元素,并返回新列表     println(list.dropRight(1))     //从左向右丢弃元素,直到条件p不成立     println(list.dropWhile(_.equals("a")))     //检测列表是否以指定序列结尾     println(list.endsWith(Seq("a")))     //判断是否相等     println(list.head.equals("a"))     //判断列表中指定条件的元素是否存在,判断l是否存在某个元素     println(list.exists(x=> x == "a"))     //输出符号指定条件的所有元素     println(list.filter(x=> x.equals("a")))     //检测所有元素     println(list.forall(x=> x.startsWith("b")))     //将函数应用到列表的所有元素     list.foreach(println)     //获取列表的第一个元素     println(list.head)     //从指定位置 from 开始查找元素第一次出现的位置     println(list.indexOf("b",0))     //返回所有元素,除了最后一个     println(list.init)     //计算多个集合的交集     println(list.intersect(Seq("a","b")))     //检测列表是否为空     println(list.isEmpty)     //创建一个新的迭代器来迭代元素     val it = list.iterator     while (it.hasNext){       println(it.next())     }     //返回最后一个元素     println(list.last)     //在指定的位置 end 开始查找元素最后出现的位置     println(list.lastIndexOf("b",1))     //返回列表长度     println(list.length)     //通过给定的方法将所有元素重新计算     list.map(x=> x+"jason").foreach(println)     //查找最大元素     println(list.max)     //查找最小元素     println(list.min)     //列表所有元素作为字符串显示     println(list.mkString)

01

大厂算法面试:使用移动窗口查找两个不重叠且元素和等于给定值的子数组

根据”老朽“多年在中国IT业浸淫的经验,我发现无论大厂还是小厂,其算法面试说难也不难。难在于算法面试的模式都是在给定网站上做算法题,90分钟做三道。我自认个人水平在平均线以上,但通过多次尝试发现,要在90分钟内完成给定算法题非常困难,这还是在我有过多年算法训练的基础上得出的结论,特别是这些题目往往有一些很不好想到的corner case,使得你的代码很难快速通过所有测试用例,我们今天要研究的题目就属于有些特定情况不好处理的例子。此外“不难”在于,很多公司的面试算法题其特色与整个行业类似,那就是缺乏原创,中国公司90%以上的面试算法题全部来自Leetcode,因此刷完后者,甚至把后者那五百多道题”背“下来,你基本上能搞定,国内仿造hackerrank的牛X网,其题目就是这个特点。

02
领券