Welcome to Rooeye's blog

标签:算法

golang

golang 中 &^ 运算符的使用

golang 中 &^ 运算符的使用
首先科普一下,golang中是没有”~”运算符的,在c语言中,”~”是一元运算符,对bit位用来取反操作: ~0 = 1 ~1 = 0 那么在golang中 取反是怎么做的呢? 是这个: “^”,没错,就是我们常见的用于异...

rooeye 2个月前 (07-21) 135℃ 0评论 2喜欢

golang

golang 优雅代码片段实现

golang 优雅代码片段实现
  No1.本来是想查查 golang 有没有自带 reverse 函数的,好吧,貌似没有。 不过在网上找到了一段实现,代码很优雅,思路是首尾两个指针,每次交换两个指针的内容,然后首指针前进一步,尾指针后退一步,同样的代码我也能写出来但是写的这么美却难以做到。 代码贴在...

rooeye 2个月前 (07-18) 150℃ 0评论 2喜欢

x86汇编

不用条件判断指令实现字符串大小写的转化

不用条件判断指令实现字符串大小写的转化
今天在写汇编的时候遇到一个问题,如何不使用任何条件指令完成字符串字母大小写的转化,略思之后感觉挺有意义,记之。 比如如下一个字符串: “RooEYeBlOG” 要把其全部转化为小写,我们知道对于字符,机器都是将其转化为ascii码进行处理的,并且一个...

rooeye 2年前 (2016-03-18) 2566℃ 6评论 3喜欢

Linkedin

Linkedin面试题

Linkedin面试题
实现函数 void printFactors(int n),将一个正整数 n 分解为多个正整数的乘积,打印出所有可能的分解情况,但不包括重复分解的情况,比如已经打印输出 3*4 ,就不应该打印输出 4*3。测试用例如下: input:12 output: 1 * 12 ...

rooeye 2年前 (2016-02-20) 1596℃ 2评论 10喜欢

OJ

有/无环单链表相关问题最优解

有/无环单链表相关问题最优解
1. 如何判断链表是否有环,如果有环返回入环节点 快指针,慢指针, 快指针每次走两步,慢指针每次走一步,如果二可以者相遇,则说明有环。当二者相遇的时候,将快指针重新指向头结点,然后快慢指针每次都走一步,相遇节点即为入环节点。 2.  无环单链表判断是否相...

rooeye 2年前 (2015-12-01) 385℃ 0评论 1喜欢

OJ

双端队列解决滑动窗口问题

双端队列解决滑动窗口问题
有一个整型数组 arr 和一个大小为 w 的窗口从数组的最左边滑到最右边,窗口每次向右边滑一个位置。 返回一个长度为n-w+1的数组res,res[i]表示每一种窗口状态下的最大值。 以数组为[4,3,5,4,3,3,6,7],w=3为例。因为第一个窗口[4,3,5]的最大值为...

rooeye 2年前 (2015-11-27) 453℃ 0评论 0喜欢

OJ

卡特兰数之究极挑战

卡特兰数之究极挑战
问题: 12个高矮不同的人,排成两排,每排6个人,每一排都从矮到高排列,且第二排都比对应的第一排的人要高,问共有多少种不同的排列方式?,如果一共有n(n为偶数)个人,一共有多少种排列方式? 解释: 这道题是一道隐藏很深的卡特兰数问题。 排列的形式如图所示,每排身高递增,...

rooeye 2年前 (2015-11-23) 609℃ 2评论 3喜欢