华为od面试算法题两道供参考
1.给定一个字符串,字符串中只包含大小写字母,请对字符串进行排序。
排序规则:按照字符串中字母出现的次数降序排序,相同出现次数的不分先后,随便一个在前面
2.给定一个二维整数数组,数组中仅包含0和1,1表示岛屿,0表示海洋,岛屿可以成片,即数组中一个元素,它是1的同时,它的上下左右元素中一个或多个元素也是1时,这些元素看作整体。请你求出岛屿数量
例题
输入数组a[3][3]
1 1 0
1 0 1
0 1 0
输出
3
分析:
1.a[0][0]、a[0][1]、a[1][0]上下或左右相连,元素外围全是0,组成一个岛屿
2.a[1][2]上下左右皆为0(海洋),单独组成一个岛屿
3.a[2][1]上下左右皆为0(海洋),单独组成一个岛屿
数组a中总共包含了3个岛屿。
排序规则:按照字符串中字母出现的次数降序排序,相同出现次数的不分先后,随便一个在前面
2.给定一个二维整数数组,数组中仅包含0和1,1表示岛屿,0表示海洋,岛屿可以成片,即数组中一个元素,它是1的同时,它的上下左右元素中一个或多个元素也是1时,这些元素看作整体。请你求出岛屿数量
例题
输入数组a[3][3]
1 1 0
1 0 1
0 1 0
输出
3
分析:
1.a[0][0]、a[0][1]、a[1][0]上下或左右相连,元素外围全是0,组成一个岛屿
2.a[1][2]上下左右皆为0(海洋),单独组成一个岛屿
3.a[2][1]上下左右皆为0(海洋),单独组成一个岛屿
数组a中总共包含了3个岛屿。
全部评论
第一道题我也遇到过
相关推荐
04-07 09:01
大连工业大学 Java 点赞 评论 收藏
分享