小编Jay*_*yce的帖子

android:提升底部只有阴影效果,如何让阴影效果显示在顶部?

我在活动的底部使用了framelayout,为了显示片段上的阴影效果,我添加了android:elevation.但阴影效果只出现在底部不在顶部,任何人都可以给我一些建议吗?

<FrameLayout
    android:id="@+id/bottom_container"
    android:background="#00737f"
    android:layout_width="match_parent"
    android:layout_height="50dp"
    android:layout_gravity="bottom"
    android:elevation="4dp"
    android:layout_alignParentBottom="true"
    android:layout_marginBottom="50dp"/>
Run Code Online (Sandbox Code Playgroud)

android shadow material-design android-elevation android-framelayout

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

Prim 的邻接矩阵实现可以使用最小堆吗?

我发现有两种方法可以实现 Prim 算法,邻接矩阵的时间复杂度是 O(V^2) 而堆和邻接列表的时间复杂度是 O(E lg(V))。

我想知道当图用邻接矩阵表示时我可以使用堆。是否有意义?如果是这样,邻接矩阵+堆和邻接表+堆之间有什么区别吗?

algorithm graph minimum-spanning-tree

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

为什么矢量模板函数赋值有两个版本来区分

我正在阅读SGI STL的源代码.当我读取assign实现的源代码时,我发现有两个版本,一个用于输入迭代,另一个用于转发迭代器.我知道输入迭代器支持read和++,转发迭代器支持读写和++,为什么它有两个版本用于输入和转发迭代器?

template <class _Tp, class _Alloc> template <class _InputIter>
void vector<_Tp, _Alloc>::_M_assign_aux(_InputIter __first, _InputIter __last,
                                    input_iterator_tag) {
  iterator __cur = begin();
  for ( ; __first != __last && __cur != end(); ++__cur, ++__first)
    *__cur = *__first;
  if (__first == __last)
    erase(__cur, end());
  else
    insert(end(), __first, __last);
}

template <class _Tp, class _Alloc> template <class _ForwardIter>
void
vector<_Tp, _Alloc>::_M_assign_aux(_ForwardIter __first, _ForwardIter __last,
                               forward_iterator_tag) {
  size_type __len = 0;
  distance(__first, __last, __len);

  if (__len > capacity()) {
    iterator __tmp = _M_allocate_and_copy(__len, …
Run Code Online (Sandbox Code Playgroud)

c++ iterator stl

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

c ++ memset导致int**指针的段错误

    int **dpTable = new int* [iMatrixHeight + 1];
    for (int i = 0; i < iMatrixHeight + 1; i++)
    {
        dpTable[i] = new int [iMatrixWidth + 1];
    }

    memset(dpTable, 0, (sizeof(int)) * (iMatrixHeight + 1)*(iMatrixWidth + 1));
Run Code Online (Sandbox Code Playgroud)

我正在使用operator new来分配一个二维数组,但是如果我使用memset来初始化数组,那么当我稍后访问数组时,我得到了一个段错误.没有memset,没关系.

我做错了吗?谢谢!

c++ arrays memset

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