相关疑难解决方法(0)

赋值如何与python list slice一起使用

Python doc说切片列表会返回一个新列表.现在,如果返回"新"列表,我有以下与"分配给切片"有关的疑问

a = [1, 2, 3]
a[0:2] = [4, 5]
print a
Run Code Online (Sandbox Code Playgroud)

现在输出将是:

[4, 5, 3] 
Run Code Online (Sandbox Code Playgroud)
  1. 如何能够回归的东西出现在表达的左侧.
  2. 是的,我阅读了文档并且它说它是可能的,因为切片列表返回一个"新"列表,为什么原始列表被修改,我无法理解它背后的机制.

python list slice

83
推荐指数
4
解决办法
4万
查看次数

使用Juggling算法旋转数组

我最近了解了当我在Programming Pearls书中阅读解决方案时,Juggling算法如何在线性时间内旋转数组.

解决它的代码如下:

/*Function to left rotate arr[] of siz n by d*/
void leftRotate(int arr[], int d, int n)
{
  int i, j, k, temp;
  for (i = 0; i < gcd(d, n); i++)
  {
    /* move i-th values of blocks */
    temp = arr[i];
    j = i;
    while(1)
    {
      k = j + d;
      if (k >= n)
        k = k - n;
      if (k == i)
        break;
      arr[j] = arr[k];
      j = k;
    }
    arr[j] …
Run Code Online (Sandbox Code Playgroud)

arrays algorithm

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

标签 统计

algorithm ×1

arrays ×1

list ×1

python ×1

slice ×1