上一页 1 ··· 5 6 7 8 9 10 11 12 13 14 下一页
摘要: b, ok := rd.(*Reader) 上面的语句的作用是判断接口的动态类型是不是*Reader类型,如果是,那么ok的值为true,这种动态类型的判断方法必须rd的类型为一个接口 结构体Reader的初始化 type Reader struct { buf []byte rd io.Reade 阅读全文
posted @ 2020-09-15 14:03 胖胖咩 阅读(370) 评论(0) 推荐(0)
摘要: 直接上一段代码,这是从go语言源码中提取出来的: func main() { // 这个表达式可以得到最大的正的int类型的值 a := int(^uint(0) >> 1) fmt.Println(a)//9223372036854775807 b := uint(0) // 无符号0 fmt.P 阅读全文
posted @ 2020-09-15 12:05 胖胖咩 阅读(215) 评论(0) 推荐(0)
摘要: 解析 最简单的方法是将矩阵先转置,然后翻转每一行元素,就得到旋转90°的矩阵了 我用的另一种思路,就是真的旋转 例如如下矩阵 然后先旋转最外层: 然后再旋转内层 也就是每个元素挪动到它最终的位置上,并用临时变量存储被占用位置的元素,每一次需要挪动元素个数4个 最外层的循环是从1 2 3这三个元素开始 阅读全文
posted @ 2020-09-14 17:46 胖胖咩 阅读(342) 评论(0) 推荐(0)
摘要: 解析 对于9*9的数独,我们按照行9个,列9个和3*3的子数独9个,因此一共有27个子数独,我们只需要判断这27个子数独中是否存在重复元素就解决了这一道题 行号0-8,列号0-8,我们按照从左到右从上到下,将3*3的子数独编号 012 3 4 5 6 7 8 那么我们按照行号和列号获取子数独编号的公 阅读全文
posted @ 2020-09-14 16:30 胖胖咩 阅读(298) 评论(0) 推荐(0)
摘要: 解析 我觉得我们需要考虑两种情况: 数组中不存在重复元素 数组中存在重复元素 当数组中存在重复元素,并且target刚好是这两个元素的和,那么我们的返回结果应该是两个相同元素的下标,甚至如果这样相同的元素有很多个,那么我只需要返回前两个相同的元素就可以了。 本题使用哈希来实现,定义哈希为map[in 阅读全文
posted @ 2020-09-14 15:00 胖胖咩 阅读(147) 评论(0) 推荐(0)
摘要: 解析 将数组中的0元素移动到最后,而其他元素的顺序保持不变,所以我们考虑双指针的做法 第一个指针用于遍历整个数组,如果这个指针遍历到的数组元素不等于0,那么就将这个值存到第二个指针指向的位置,然后将第二个指针向后移动一个位置 最后将第二个指针后面的数组位置全部补上0就可以了 算法 定义指针index 阅读全文
posted @ 2020-09-14 14:05 胖胖咩 阅读(137) 评论(0) 推荐(0)
摘要: 算法 设置一个进位值carry,初始carry的值为1,从数组的最后开始向前遍历遍历 数组当前遍历到的元素加carry,新的carry是这个和除以10,数组当前位置新的值是这个和对10求余 遍历完整个数组以后: 如果carry等于1,那么就在数组的最前面加一个元素1 如果carry不等于1,那么就直 阅读全文
posted @ 2020-09-14 13:48 胖胖咩 阅读(143) 评论(0) 推荐(0)
摘要: 解析 数组中元素是可以重复的 如果重复的元素是交集中的元素,那么在交集中要有这些元素 算法 创建一个map[int]int 遍历数组1中所有的元素,将他们存在上面的map中,map的键就是元素的值,map的值就是该元素出现的次数 遍历第二个数组的元素,如果该元素在map中的值大于1,就将这个元素存入 阅读全文
posted @ 2020-09-14 13:26 胖胖咩 阅读(202) 评论(0) 推荐(0)
摘要: 先决知识 异或操作符^ 关于异或运算: 我们需要知道的是任意两个相同的数进行异或运算结果为0 0与任意数字异或运算结果还是该数字本身 算法 将数组中所有元素进行异或运算,由于之前所有元素都成对出现,所以那些元素异或结果为0,这个0与那个单独的元素异或运算,结果就是只出现一次的那个元素 代码如下: f 阅读全文
posted @ 2020-09-14 10:58 胖胖咩 阅读(138) 评论(0) 推荐(0)
摘要: 本题的目的是判断数组中是否存在重复元素,那么直接使用map[int]bool就可以实现目的 代码如下: func containsDuplicate(nums []int) bool { elemMap := make(map[int]bool) for _, value := range nums 阅读全文
posted @ 2020-09-14 10:30 胖胖咩 阅读(149) 评论(0) 推荐(0)
上一页 1 ··· 5 6 7 8 9 10 11 12 13 14 下一页