小编pou*_*er7的帖子

泡泡洗牌 - 加权洗牌

可以设想对冒泡排序进行修改,其中“交换”以概率随机发生p,而不是通过执行比较。结果可以称为“泡沫洗牌”。靠近前面的元素可能会保留在那里,但有机会移到列表的后面。

修改从互联网上窃取的冒泡排序,您可以想出以下内容:

import random

def bubble_shuffle(arr, p):
    arr = copy.copy(arr)
    n = len(arr) 
  
    # Traverse through all array elements 
    for i in range(n-1): 
    # range(n) also work but outer loop will repeat one time more than needed. 
  
        # Last i elements are already in place 
        for j in range(0, n-i-1): 
  
            # traverse the array from 0 to n-i-1 
            # Swap if random number [0, 1] is less than p
            if random.random() < p:
                arr[j], arr[j+1] = arr[j+1], arr[j] …
Run Code Online (Sandbox Code Playgroud)

python algorithm shuffle list bubble-sort

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

是否有可能构建一个自动插值的Pandas系列?

对于任何给定的索引,是否有可能产生一个插值其值的系列.我有一个预定义的插值方案,我希望规定,我宁愿调用者自己不应用插值,以避免任何错误的可能性.

class InterpolatedSeries(pd.Series):
    pass # magic?

s = pd.Series([1, 3], index=[1, 3])
i = InterpolatedSeries(s, forward='nearest', backward='nearest', middle='linear')
Run Code Online (Sandbox Code Playgroud)

调用者将收到i结果,他们现在可以请求任何值,我相信他们得到的值符合规定的插值方案.插值肯定不是可预先计算的(因为我们不知道他们会提前请求哪些点)或可缓存(因为我们不知道他们会要求多少点),但重要的是没有并发症对于来电者.

这可能吗?

>>> i[[0, 0.11234, 1, 2, 2.367, 3, 4]]
... pd.Series([1, 1, 1, 2, 2.367, 3, 3], index=[0, 0.11234, 1, 2, 2.367, 3, 4])
Run Code Online (Sandbox Code Playgroud)

python pandas

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

Parsekit自动完成

给出一个简单的Parsekit语法.

@start = sentence+;
sentence = 'beer' container;
container = 'bottle' | 'cup';
Run Code Online (Sandbox Code Playgroud)

如果我有部分解析beer,是否可以让Parsekit将可能的完成返回到句子?

grammar objective-c ios parsekit

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

Java隐含"this"参数的方法?

在编程语言中,Java对对象进行方法调用,通过隐式传递对象的引用来处理并作为静态方法工作?

java methods this

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

Simplfy行和列提取,numpy

我希望使用单个"花式"切片从矩阵中提取行和列,这可能吗?

m = matrix([[1, 2, 3],
            [4, 5, 6],
            [7, 8, 9]])
Run Code Online (Sandbox Code Playgroud)

我的目标是

matrix([[1, 3],
        [7, 9]])
Run Code Online (Sandbox Code Playgroud)

我有一份我想要的物品清单

d = [0,2]
Run Code Online (Sandbox Code Playgroud)

我可以实现功能

m[d][:,d]
Run Code Online (Sandbox Code Playgroud)

但是有一个更简单的表达方式吗?

python numpy

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

标签 统计

python ×3

algorithm ×1

bubble-sort ×1

grammar ×1

ios ×1

java ×1

list ×1

methods ×1

numpy ×1

objective-c ×1

pandas ×1

parsekit ×1

shuffle ×1

this ×1