小编yuv*_*uvi的帖子

如何在Android上基于每个应用程序查找数据使用情况?

我试图在每个应用程序的基础上找出Android上的数据使用情况.像Android数据使用应用程序和配额/上限监视器小部件:永远不会收取额外的数据或再次上限!.

我查看了Stack Overflow问题如何在Android环境中检测数据使用情况.

但它并没有多大帮助.


ActivityManager activityManager = (ActivityManager) this.getSystemService(ACTIVITY_SERVICE);
ActivityManager.MemoryInfo mInfo = new ActivityManager.MemoryInfo();
activityManager.getMemoryInfo( mInfo );
List<RunningAppProcessInfo> listOfRunningProcess = activityManager.getRunningAppProcesses();
Log.d(TAG, "XXSize: " + listOfRunningProcess.size());

for (RunningAppProcessInfo runningAppProcessInfo : listOfRunningProcess) {

    if (runningAppProcessInfo.uid > 1026)
    {
        Log.d(TAG, "ANS " + runningAppProcessInfo.processName +
                   " Id :" + runningAppProcessInfo.pid +
                   " UID: " + runningAppProcessInfo.uid);
    }
}
Run Code Online (Sandbox Code Playgroud)

我按照Akos Cz的建议尝试了上面的代码.但是,与上面提到的不同,所有UID都是数字app_79.这样可以吗?

android usage-statistics

41
推荐指数
2
解决办法
7万
查看次数

亚马逊访谈 - 设计会议日程安排

最近,我接受了采访.我被要求设计一个会议日程安排程序,就像在Microsoft Outlook日历或gmail日历中一样.我建议每天创建一个48的数组.每隔30分钟代表阵列入口.

我必须确保下一次约会不会与之前的会议发生冲突.

我的解决方案工作正常,但它浪费了太多的内存.

任何人都可以告诉我如何找到更好的解决方案来检测会议碰撞.

我不知道一开始的所有会议.它们将在以后随机添加.

谢谢,

algorithm

18
推荐指数
2
解决办法
1万
查看次数

谷歌访谈:找到字符串之间的疯狂距离

谷歌采访时向我询问了这个问题.我能做到O(n*n)......我可以在更好的时间做到这一点.字符串只能由1和0组成.

定义:

X和Y是由0或1组成的字符串

D(X,Y) =从X和Y开始删除开头常见的东西.然后从两个字符串中添加剩余的长度.

例如

D(1111, 1000)=只有第一个字母是常见的.所以剩下的字符串是111&000.因此结果length("111")&length("000")= 3 + 3 = 6

D(101, 1100)=只有前两个字母是常见的.所以剩下的字符串是01&100.因此结果length("01")&length("100")= 2 + 3 = 5

非常明显的是,发现这样一个疯狂的距离将是线性的.O(M).

现在的问题是

给n输入,比如说

1111
1000
101
1100
Run Code Online (Sandbox Code Playgroud)

找出可能的最大疯狂距离.

n是输入字符串的数量.m是任何输入字符串的最大长度.

O(n 2*m)的解决方案非常简单.它能以更好的方式完成吗?我们假设m是固定的.我们能比O(n ^ 2)做得更好吗?

string algorithm

10
推荐指数
1
解决办法
3045
查看次数

给定一个具有N个定义点的圆和圆外的点M,找到N.O(LogN)集合中最接近M的点

http://www.glassdoor.com/Interview/Google-Interview-RVW2382108.htm

我试图找到解决这个问题的方法.但我还没有成功..任何人都可以给我一个关于如何处理这个问题的提示.

我将分别拿2对两分.也就是说,我将制作2个和弦.找出他们的垂直平分线.使用这些平分线,我会发现圆圈的中心......

而且,我会想出圆圈的等式.并找到点M与圆的交点......那应该是最近点.但是,该点可能存在也可能不存在于N点的集合中

谢谢.

algorithm geometry

5
推荐指数
1
解决办法
2536
查看次数

亚马逊访谈任何时候参加活动的最大人数

假设我有一个人员列表,其中包含他们在过去发生的事件中的到达和离开时间.

我的任务是找出人最大数量存在于事件的任何时间?我没有给出查询时间.

ai =人的到达时间i

di =人的离开时间i

我有一个对象列表,如(a1,d1),(a2,d2),(a3,d3)....(an,dn)......它不在数据库中.

在此输入图像描述

在这个问题中我们可以看到事件的最大人数是3.
所以在这个例子中.对于大小为3的问题,我们有五种解决方案.{b,d,e},{j,h,i},{c,b,a},{e,g,f},{g,h,f}.我只想知道3号.

我的方法:
我.创建一个size =最后出发时间 - 首次到达时间的数组.并继续增加该数组的计数.
II.我试图按照他们的开始时间对人们进行排序.并继续跳到下一个人的开始时间.在那之后,我迷路了.我该怎么办?

谢谢

@ypnos://在时间戳上对数据进行排序.

int count = 0;
int max = 0
char [] arr = {a1, a2, d1, a3, a4, d3, d2, } like this..
for(int i =0; i < arr.length; i++)
{
    if(arr[i].startswith('a') ) 
    {
         count++;
    if(count > max)
    {
        max = count;
    }
    }
    else
   {
    count--;
   }
}
Run Code Online (Sandbox Code Playgroud)

algorithm

1
推荐指数
1
解决办法
2410
查看次数

标签 统计

algorithm ×4

android ×1

geometry ×1

string ×1

usage-statistics ×1