小编林果皞*_*林果皞的帖子

将数字插入已排序的数字数组的有效方法?

我有一个已排序的JavaScript数组,并希望在数组中再插入一个项目,以便生成的数组保持排序状态.我当然可以实现一个简单的快速插入式插入功能:

var array = [1,2,3,4,5,6,7,8,9];
var element = 3.5;
function insert(element, array) {
  array.splice(locationOf(element, array) + 1, 0, element);
  return array;
}

function locationOf(element, array, start, end) {
  start = start || 0;
  end = end || array.length;
  var pivot = parseInt(start + (end - start) / 2, 10);
  if (end-start <= 1 || array[pivot] === element) return pivot;
  if (array[pivot] < element) {
    return locationOf(element, array, pivot, end);
  } else {
    return locationOf(element, array, start, pivot);
  }
}

console.log(insert(element, …
Run Code Online (Sandbox Code Playgroud)

javascript sorting algorithm

124
推荐指数
9
解决办法
8万
查看次数

如果忘记插入电话线,如何防止 Android Studio 启动模拟器

自几个月前起,Android Studio 发生了一些变化。

如果我在急于调试手机中的应用程序时忘记将电话线插入计算机(由于端口不够,我的工作需要经常重新插入),它会自动运行我的模拟器“Nexus 5 API 21”,如下所示:

在此输入图像描述

我必须一遍又一遍地停止模拟器。如果我急于做某事,那会浪费我的时间。

这种情况在我身上发生过很多次,所以我的问题是如果电话线尚未插入,如何防止模拟器默认运行。

android-studio

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

当我运行 selenium 脚本时出现错误 Value Error: Timeout value connect was &lt;object object at 0x000002A40BE37F80&gt;

我是硒的新手,编写了以下代码来打开亚马逊网站。但是当我运行时,我收到了下面粘贴的错误。

from selenium import webdriver
driver = webdriver.Chrome(executable_path="C:\\Users\\HP\\Desktop\\webdriver\\chromedriver.exe")
driver.get("https://www.amazon.in/")
Run Code Online (Sandbox Code Playgroud)

错误信息:

"C:\Program Files\Python37\python.exe" C:\Users\HP\PycharmProjects\pythonTest\Test.py 
Traceback (most recent call last):
  File "C:\Users\HP\PycharmProjects\pythonTest\Test.py", line 2, in <module>
    driver = webdriver.Chrome(executable_path="C:\\Users\\HP\\Desktop\\webdriver\\chromedriver.exe")
  File "C:\Users\HP\AppData\Roaming\Python\Python37\site-packages\selenium\webdriver\chrome\webdriver.py", line 81, in __init__
    desired_capabilities=desired_capabilities)
  File "C:\Users\HP\AppData\Roaming\Python\Python37\site-packages\selenium\webdriver\remote\webdriver.py", line 157, in __init__
    self.start_session(capabilities, browser_profile)
  File "C:\Users\HP\AppData\Roaming\Python\Python37\site-packages\selenium\webdriver\remote\webdriver.py", line 252, in start_session
    response = self.execute(Command.NEW_SESSION, parameters)
  File "C:\Users\HP\AppData\Roaming\Python\Python37\site-packages\selenium\webdriver\remote\webdriver.py", line 319, in execute
    response = self.command_executor.execute(driver_command, params)
  File "C:\Users\HP\AppData\Roaming\Python\Python37\site-packages\selenium\webdriver\remote\remote_connection.py", line 374, in execute
    return self._request(command_info[0], url, body=data)
  File "C:\Users\HP\AppData\Roaming\Python\Python37\site-packages\selenium\webdriver\remote\remote_connection.py", line 397, in _request
    resp = …
Run Code Online (Sandbox Code Playgroud)

timeout valueerror

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

Android - 覆盖屏幕,包括状态栏内容

我想制作一个覆盖整个屏幕的覆盖屏幕,包括状态栏和导航栏。

我花了几个小时的谷歌搜索/研究仍然没有运气。

这是我的代码:

MainActivity.java(启动器):

package com.blogspot.diannaoxiaobai.myapplication;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        startActivity(new Intent(this, Main2Activity.class));
    }
}
Run Code Online (Sandbox Code Playgroud)

活动_main.xml :

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.blogspot.diannaoxiaobai.myapplication.MainActivity">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello World!" />
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

Main2Activity.java(由MainActivity启动):

package com.blogspot.diannaoxiaobai.myapplication;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.Window;

public class Main2Activity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) …
Run Code Online (Sandbox Code Playgroud)

android overlay android-theme android-overlay android-statusbar

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

为什么~0 >> 1不会移位?

我只是从K&R c book第2章学习,假设我有这段代码:

#include <stdio.h>
int
main(void)
{
    printf("0x%016llx\n", ~0); //0x00000000ffffffff

    printf("0x%016llx\n", ~0 >> 1); //0x00000000ffffffff
    printf("0x%016llx\n", 0x00000000ffffffff >> 1); //0x000000007fffffff
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我希望~0 >> 1会给出0x000000007fffffff怎么样的0x00000000ffffffff >> 1,~0有价值的0x00000000ffffffff.

为什么~0 >> 1不换位?

c bit-shift bitwise-operators

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

python - 重载()时无法访问gc

我有这个代码,另存为so.py:

import gc
gc.set_debug(gc.DEBUG_STATS|gc.DEBUG_LEAK)

class GUI():
    #########################################
    def set_func(self):
        self.functions = {}
        self.functions[100] = self.userInput
    #########################################
    def userInput(self):
        a = 1
g = GUI()
g.set_func()
print gc.collect()
print gc.garbage
Run Code Online (Sandbox Code Playgroud)

这是输出: 在此输入图像描述

我有两个问题:

  1. 为什么gc.collect()在第一次导入时不报告无法访问?相反,它仅在reload()时报告无法访问.

  2. 有没有快速的方法来修复这个函数映射循环引用,即self.functions [100] = self.userInput?因为我的旧项目有很多这个函数映射循环引用,我正在寻找一个快速的方法/一行来改变这些代码.目前我所做的是最后所有这些功能的"del g.functions".

python garbage-collection circular-reference python-2.7

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

Android Studio - 如何在build.gradle中编辑此字体颜色

我已经安装了vim dark自定义主题并进行了编辑以满足我的需求,但我意识到了一些问题build.gradle:

在此输入图像描述

正如你所看到的,布尔值multiDexEnabled true,incremental truepreDexLibraries = false为深蓝色,以识别哪些努力.

我也有问题显示这个proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt': 在此输入图像描述

另一个例子是android - > sourceSets - > defaultConfig's minSdkVersionmultiDexEnabled:

在此输入图像描述

所以我的问题是,如何build.gradle在Android Studio 2.1.2中编辑这两种字体颜色(深蓝色和下划线)?

intellij-idea android-studio build.gradle android-studio-2.1

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

Android-如何删除setError()的感叹号

我的xml代码的密码字段部分:

<android.support.percent.PercentRelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    >
...

    <android.support.design.widget.TextInputLayout
        android:layout_below="@+id/uname_ly"
        android:id="@+id/text_input_layout_passwd"
        app:layout_widthPercent="70%"
        android:layout_centerHorizontal="true"
        app:layout_heightPercent="10%"
        app:layout_marginTopPercent="0%"
        app:layout_marginBottomPercent="0%"
        android:adjustViewBounds="true"
        android:textColorHint="@color/editTextHintColor"
        app:hintTextAppearance="@style/TextAppearance.App.TextInputLayout"
        >

        <EditText
            android:id="@+id/password"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="@string/nopasswd"
            android:inputType="textPassword"
            android:maxLines="1"
            android:textColor="@color/editTextTextColor" />

    </android.support.design.widget.TextInputLayout>
...
Run Code Online (Sandbox Code Playgroud)

调用setError()时如何删除此重叠的红色感叹号? 在此处输入图片说明

[更新样式]

<style name="TextAppearance.App.TextInputLayout" parent="@android:style/TextAppearance">
    <item name="android:textColor">@color/editTextHintColor</item>
</style>
Run Code Online (Sandbox Code Playgroud)

android android-layout android-edittext android-styles android-textinputlayout

2
推荐指数
2
解决办法
775
查看次数

在Android中查找javaMaxHeapSize的默认值

我知道我可以这样做(参考):

android {
  ...
  dexOptions {
    maxProcessCount 4 // this is the default value
    javaMaxHeapSize "2g"
  }
}
Run Code Online (Sandbox Code Playgroud)

但是我怎么知道javaMaxHeapSize的默认/当前值?

我的平台是Fedora 21及以下版本:

Android Studio 2.1.2
Build #AI-143.2915827, built on May 26, 2016
JRE: 1.8.0_74-b02 amd64
JVM: Java HotSpot(TM) 64-Bit Server VM by Oracle Corporation
Run Code Online (Sandbox Code Playgroud)

android build.gradle android-gradle-plugin

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

gawk中gensub()的解释

我有一个要求,我必须删除,文件中倒数第二行的内容,如下所示

\n
   '/tols/tope/triy8/ffgy/890/oki4/2egt.dbf',\n   '/tols/tope/triy8/ffgy/890/oki4/sddd.dbf',\n   '/tols/tope/triy8/ffgy/890/oki4/dfcf.dbf',\n   '/tols/tope/triy8/ffgy/890/oki4/rttemp.dbf',\n   '/tols/tope/triy8/ffgy/890/oki4/oxiule.dbf',\n   '/tols/tope/triy8/ffgy/890/oki4/sdafrtt.dbf',\n CHARACTER SET AL32UTF8\n ;\n
Run Code Online (Sandbox Code Playgroud)\n

我使用来自该论坛的 gawk 命令实现了它,如下所示:

\n

-bash-3.2$ gawk -v RS='\\0' -v ORS= '{print gensub(/,([^,]+)$/, "\\\\1", "")}' tstop1

\n

[编辑]:原始问题显示"\\1"是由格式不正确引起的,但它实际上意味着"\\\\1"

\n

获得的输出作为所需的输出:

\n
  '/tols/tope/triy8/ffgy/890/oki4/2egt.dbf',\n   '/tols/tope/triy8/ffgy/890/oki4/sddd.dbf',\n   '/tols/tope/triy8/ffgy/890/oki4/dfcf.dbf',\n   '/tols/tope/triy8/ffgy/890/oki4/rttemp.dbf',\n   '/tols/tope/triy8/ffgy/890/oki4/oxiule.dbf',\n   '/tols/tope/triy8/ffgy/890/oki4/sdafrtt.dbf'\n CHARACTER SET AL32UTF8\n ;\n
Run Code Online (Sandbox Code Playgroud)\n

但我不理解该命令,尤其是这部分gensub(/,([^,]+)$/, "\\\\1", "")...\n我从手册中得到以下内容gensub

\n
\n

gensub(r, s, h [, t]) 在目标字符串中搜索t正则表达式的\n匹​​配项r。如果是一个以or\nh开头的字符串,则将 的所有匹配项替换为。否则,\n是一个数字,指示要替换的匹配项 。如果未提供,则使用 来代替。在替换文本中,\n序列(其中是从 1 到 9 的数字)可用于\n表示仅与 \xe2\x80\x99th 带括号的子表达式匹配的文本。该序列代表整个匹配的文本,\nas …

awk

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